bootstrap源码分析之foRm、navbar
一、表单(Form)
源码文件:
_form.scss
mixins/_form.scss
1、按层次结构分:form-group -> form-control/input-group/form-static-control -> 各类标签
2、Form-group/form-control/input-group/form-static-control之类的容器,分为两种显示方式:block、inline-block。而实现input-group水平用的是table-cell。
1
2
3
4
5
6
7
8
9
<span style=
"color: #800000;"
>.input-group </span>{<span style=
"color: #ff0000;"
>
display</span>:<span style=
"color: #0000ff;"
> inline-table</span>;<span style=
"color: #ff0000;"
>
vertical-align</span>:<span style=
"color: #0000ff;"
> middle</span>;<span style=
"color: #ff0000;"
>
.input-group-addon,
.input-group-btn,
.form-control {
width</span>:<span style=
"color: #0000ff;"
> auto</span>;
}<span style=
"color: #800000;"
>
}</span>
ログイン後にコピー3、Input-group-addon:类如果插入网页文字图标,会向上一个像素的错位
解决方案:glyphicon不能与其他样式合并使用,而是内部嵌套使用即可,因为glyphicon对top有1个像素的设置:
1
2
3
4
5
6
7
8
9
10
11
<span style=
"color: #800000;"
>.glyphicon </span>{<span style=
"color: #ff0000;"
>
position</span>:<span style=
"color: #0000ff;"
> relative</span>;<span style=
"color: #ff0000;"
>
top</span>:<span style=
"color: #0000ff;"
> 1px</span>;<span style=
"color: #ff0000;"
>
display</span>:<span style=
"color: #0000ff;"
> inline-block</span>;<span style=
"color: #ff0000;"
>
font-family</span>:<span style=
"color: #0000ff;"
>
'Glyphicons Halflings'
</span>;<span style=
"color: #ff0000;"
>
font-style</span>:<span style=
"color: #0000ff;"
> normal</span>;<span style=
"color: #ff0000;"
>
font-weight</span>:<span style=
"color: #0000ff;"
> normal</span>;<span style=
"color: #ff0000;"
>
line-height</span>:<span style=
"color: #0000ff;"
> 1</span>;<span style=
"color: #ff0000;"
>
-webkit-font-smoothing</span>:<span style=
"color: #0000ff;"
> antialiased</span>;<span style=
"color: #ff0000;"
>
-moz-osx-font-smoothing</span>:<span style=
"color: #0000ff;"
> grayscale</span>;
}
ログイン後にコピー
二、导航条(navbar)
源码文件:
_navbar.scss
1、主要进行了内部区域的划分,如:head、其他区域;以及导航条位置的定位
2、折叠器实现(在4.0已移除),也就是navbar-collapse类,代替的是collapse,在按钮上面弹出隐藏层
2.1、Navbar-collapse:在大于breakpoint时,会强制显示(由于collapse默认是隐藏的)
3、内容支持nav、brand、form、toggler
4、Navbar-toggler(4.0移除):设定在屏幕小于breakpoint值时(768)显示,而在4.0则直接用collapse来展示此按钮,没有屏幕大小的限制,navbar-toggle的应用也要结合collapse使用
5、Navbar-static-top:只是增加了zIndex,去掉了圆角、边框宽度等内容。
6、Navbar-fixed-top/bottom:都是定位在上方、下方,有浮动影响
7、Navbar-brand:品牌,可以放网页名称、公司Logo等内容
8、Navbar-toggle:用于收缩的单击的图片,他会在小于breakpoint时显示,大于此值就隐藏(并且,toggle显示是右浮动,且作为相对定位元素):
9、Navbar-nav:原nav的基础进行了一些兼容设置,主是在breakpoint-max下的样式调整,以及在breakpointg下的样式调整,还是去掉默认的背景色,shadow等内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<span style=
"color: #800000;"
>.navbar-toggle </span>{<span style=
"color: #ff0000;"
>
position</span>:<span style=
"color: #0000ff;"
> relative</span>;<span style=
"color: #ff0000;"
>
float</span>:<span style=
"color: #0000ff;"
> right</span>;<span style=
"color: #ff0000;"
>
margin-right</span>:<span style=
"color: #0000ff;"
>
$navbar
-padding-horizontal</span>;<span style=
"color: #ff0000;"
>
padding</span>:<span style=
"color: #0000ff;"
> 9px 10px</span>;<span style=
"color: #ff0000;"
>
@
include
navbar-vertical-align(34px);
background-color</span>:<span style=
"color: #0000ff;"
> transparent</span>;<span style=
"color: #ff0000;"
>
background-image</span>:<span style=
"color: #0000ff;"
> none</span>;<span style=
"color: #ff0000;"
>
// Reset unusual Firefox-on-Android default style; see https</span>:<span style="color: #0000ff;">//github.com/necolas/normalize.css/issues/214
border: 1px solid transparent</span>;<span style=
"color: #ff0000;"
>
border-radius</span>:<span style=
"color: #0000ff;"
>
$border
-radius-base</span>;<span style=
"color: #ff0000;"
>
// We remove the `outline` here, but later compensate by attaching `</span>:<span style="color: #0000ff;">hover`
// styles to `:focus`.
&:focus {
outline: 0</span>;
}<span style=
"color: #800000;"
>
// Bars
.icon-bar </span>{<span style=
"color: #ff0000;"
>
display</span>:<span style=
"color: #0000ff;"
> block</span>;<span style=
"color: #ff0000;"
>
width</span>:<span style=
"color: #0000ff;"
> 22px</span>;<span style=
"color: #ff0000;"
>
height</span>:<span style=
"color: #0000ff;"
> 2px</span>;<span style=
"color: #ff0000;"
>
border-radius</span>:<span style=
"color: #0000ff;"
> 1px</span>;
}<span style=
"color: #800000;"
>
.icon-bar + .icon-bar </span>{<span style=
"color: #ff0000;"
>
margin-top</span>:<span style=
"color: #0000ff;"
> 4px</span>;
}<span style=
"color: #800000;"
>
@media (min-width:
$grid
-float-breakpoint) </span>{<span style=
"color: #ff0000;"
>
display</span>:<span style=
"color: #0000ff;"
> none</span>;
}<span style=
"color: #800000;"
>
}</span>
ログイン後にコピー
10、Navbar-form:主要调整所有form都为行内元素
11、Navbar-text、navbar-btn:都在默认的基础上做了相就的兼容设置
12、Navbar提供了default、inverse两种主题,各主题下对其各自的部件都做了相应的样式兼容处理
13、导航条本身的样式不多,本身只提供了toggle、brand两个内容,主要提供了两种主题,以及将dropdown、collapse、form、nav四个部件的组合。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

画像をクリックした後、散乱と周囲の画像を拡大する効果を実現するには、多くのWebデザインがインタラクティブな効果を実現する必要があります。特定の画像をクリックして周囲を作成してください...

Y軸位置Webアノテーション機能の適応アルゴリズムこの記事では、単語文書と同様の注釈関数、特に注釈間の間隔を扱う方法を実装する方法を探ります...

HTML、CSS、およびJavaScriptは、Web開発の3つの柱です。 1。HTMLは、Webページ構造を定義し、などなどのタグを使用します。2。CSSは、色、フォントサイズなどのセレクターと属性を使用してWebページスタイルを制御します。
