CSS
Tutmondaj CSS-agordoj, fundamentaj HTML-elementoj stiligitaj kaj plibonigitaj per etendeblaj klasoj, kaj altnivela kradsistemo.
Tutmondaj CSS-agordoj, fundamentaj HTML-elementoj stiligitaj kaj plibonigitaj per etendeblaj klasoj, kaj altnivela kradsistemo.
Akiru informojn pri la ĉefaj pecoj de la infrastrukturo de Bootstrap, inkluzive de nia aliro al pli bona, pli rapida, pli forta retejo-disvolviĝo.
Bootstrap uzas iujn HTML-elementojn kaj CSS-ecojn, kiuj postulas la uzon de la HTML5-dokumentotipo. Enmetu ĝin komence de ĉiuj viaj projektoj.
<!DOCTYPE html>
<html lang="en">
...
</html>
Kun Bootstrap 2, ni aldonis laŭvolajn poŝtelefonajn amikajn stilojn por ŝlosilaj aspektoj de la kadro. Kun Bootstrap 3, ni reverkis la projekton por esti movebla amika de la komenco. Anstataŭ aldoni laŭvolajn moveblajn stilojn, ili estas bakitaj ĝuste en la kernon. Fakte, Bootstrap unue estas movebla . Poŝtelefonaj unuaj stiloj troveblas tra la tuta biblioteko anstataŭ en apartaj dosieroj.
Por certigi taŭgan bildigon kaj tuŝan zomon, aldonu la meta-etikedon de vidpunkto al via <head>
.
<meta name="viewport" content="width=device-width, initial-scale=1">
Vi povas malŝalti zomigajn kapablojn ĉe porteblaj aparatoj aldonante user-scalable=no
al la meta-etikedo de la vidfenestro. Ĉi tio malŝaltas zomi, kio signifas, ke uzantoj nur povas rulumi, kaj rezultigas vian retejon sentiĝi iom pli kiel denaska aplikaĵo. Ĝenerale, ni ne rekomendas ĉi tion en ĉiu retejo, do atentu!
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
Bootstrap starigas bazajn tutmondajn ekranajn, tipografiojn kaj ligajn stilojn. Specife, ni:
background-color: #fff;
sur labody
@font-family-base
, @font-size-base
, kaj @line-height-base
atributojn kiel nian tipografian bazon@link-color
kaj apliku ligajn substrekojn nur sur:hover
Ĉi tiuj stiloj troviĝas ene de scaffolding.less
.
Por plibonigita trans-retumila bildigo, ni uzas Normalize.css , projekton de Nicolas Gallagher kaj Jonathan Neal .
Bootstrap postulas enhavan elementon por envolvi retejan enhavon kaj gastigi nian kradsistemon. Vi povas elekti unu el du ujoj por uzi en viaj projektoj. Rimarku ke, pro padding
kaj pli, neniu ujo estas enŝlosebla.
Uzu .container
por respondema fiksa larĝa ujo.
<div class="container">
...
</div>
Uzu .container-fluid
por plenlarĝa ujo, ampleksanta la tutan larĝon de via vidfenestro.
<div class="container-fluid">
...
</div>
Bootstrap inkluzivas respondeman, moveblan unuan fluidan kradsistemon, kiu taŭge skalas ĝis 12 kolumnojn laŭ la grandeco de la aparato aŭ vidfenestro pliiĝas. Ĝi inkluzivas antaŭdifinitajn klasojn por facilaj aranĝaj opcioj, kaj ankaŭ potencajn miksaĵojn por generi pli semantikajn aranĝojn .
Kradaj sistemoj estas uzataj por krei paĝajn aranĝojn per serio de vicoj kaj kolumnoj, kiuj enhavas vian enhavon. Jen kiel funkcias la kradsistemo Bootstrap:
.container
(fiks-larĝo) aŭ .container-fluid
(plen-larĝo) por taŭga vicigo kaj kompletigo..row
kaj .col-xs-4
estas disponeblaj por rapide fari kradajn aranĝojn. Malpli da miksaĵoj ankaŭ povas esti uzataj por pli semantikaj aranĝoj.padding
. Tiu kompletigo estas kompensita en vicoj por la unua kaj lasta kolumno per negativa marĝeno sur .row
s..col-xs-4
..col-md-*
klason al elemento ne nur influos ĝian stilon ĉe mezaj aparatoj sed ankaŭ ĉe grandaj aparatoj se .col-lg-*
klaso ne ĉeestas.Rigardu la ekzemplojn por apliki ĉi tiujn principojn al via kodo.
Ni uzas la sekvajn amaskomunikilajn demandojn en niaj Malpli dosieroj por krei la ŝlosilajn rompopunktojn en nia kradsistemo.
/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */
/* Small devices (tablets, 768px and up) */
@media (min-width: @screen-sm-min) { ... }
/* Medium devices (desktops, 992px and up) */
@media (min-width: @screen-md-min) { ... }
/* Large devices (large desktops, 1200px and up) */
@media (min-width: @screen-lg-min) { ... }
Ni foje plivastigas ĉi tiujn amaskomunikilajn demandojn por inkluzivi max-width
por limigi CSS al pli mallarĝa aro da aparatoj.
@media (max-width: @screen-xs-max) { ... }
@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { ... }
@media (min-width: @screen-md-min) and (max-width: @screen-md-max) { ... }
@media (min-width: @screen-lg-min) { ... }
Vidu kiel aspektoj de la Bootstrap kradsistemo funkcias tra pluraj aparatoj kun oportuna tablo.
Ekstra malgrandaj aparatoj Telefonoj (<768px) | Malgrandaj aparatoj Tablojdoj (≥768px) | Mezaj aparatoj Labortabloj (≥992px) | Grandaj aparatoj Labortabloj (≥1200px) | |
---|---|---|---|---|
Krada konduto | Horizontale ĉiam | Kolapsis por komenci, horizontale super rompopunktoj | ||
Larĝo de ujo | Neniu (aŭtomata) | 750 px | 970 px | 1170 px |
Klasprefikso | .col-xs- |
.col-sm- |
.col-md- |
.col-lg- |
nombro da kolumnoj | 12 | |||
Larĝo de kolumno | Aŭtomate | ~62px | ~81px | ~97px |
Larĝo de kanaleto | 30 px (15 px sur ĉiu flanko de kolono) | |||
Nestebla | Jes | |||
Ofsetoj | Jes | |||
Kolumna ordigo | Jes |
Uzante ununuran aron de .col-md-*
kradklasoj, vi povas krei bazan kradsistemon, kiu komenciĝas stakigita sur porteblaj aparatoj kaj tablojdaj aparatoj (la ekstra malgranda ĝis malgranda gamo) antaŭ iĝi horizontala sur labortablaj (mezaj) aparatoj. Metu kradkolumnojn en iu ajn .row
.
<div class="row">
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
</div>
<div class="row">
<div class="col-md-8">.col-md-8</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-6">.col-md-6</div>
<div class="col-md-6">.col-md-6</div>
</div>
Turnu ajnan fikslarĝan kradan aranĝon en plenlarĝan aranĝon ŝanĝante vian plej eksteran .container
al .container-fluid
.
<div class="container-fluid">
<div class="row">
...
</div>
</div>
Ĉu vi ne volas, ke viaj kolumnoj simple stakiĝas en pli malgrandaj aparatoj? Uzu la ekstrajn malgrandajn kaj mezajn aparatojn kradklasojn aldonante .col-xs-*
.col-md-*
al viaj kolumnoj. Vidu la ekzemplon sube por pli bona ideo pri kiel ĉio funkcias.
<!-- Stack the columns on mobile by making one full-width and the other half-width -->
<div class="row">
<div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop -->
<div class="row">
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<!-- Columns are always 50% wide, on mobile and desktop -->
<div class="row">
<div class="col-xs-6">.col-xs-6</div>
<div class="col-xs-6">.col-xs-6</div>
</div>
Konstruu sur la antaŭa ekzemplo kreante eĉ pli dinamikajn kaj potencajn aranĝojn kun tablojdaj .col-sm-*
klasoj.
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<div class="row">
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
<!-- Optional: clear the XS cols if their content doesn't match in height -->
<div class="clearfix visible-xs-block"></div>
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
</div>
Se pli ol 12 kolumnoj estas metitaj ene de ununura vico, ĉiu grupo de kromaj kolumnoj, kiel unu unuo, envolvos novan linion.
<div class="row">
<div class="col-xs-9">.col-xs-9</div>
<div class="col-xs-4">.col-xs-4<br>Since 9 + 4 = 13 > 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.</div>
<div class="col-xs-6">.col-xs-6<br>Subsequent columns continue along the new line.</div>
</div>
Kun la kvar niveloj de kradoj disponeblaj, vi nepre renkontos problemojn, kie, ĉe certaj rompopunktoj, viaj kolumnoj ne tute klariĝas, ĉar unu estas pli alta ol la alia. Por ripari tion, uzu kombinaĵon de a .clearfix
kaj niaj respondemaj utilecaj klasoj .
<div class="row">
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<!-- Add the extra clearfix for only the required viewport -->
<div class="clearfix visible-xs-block"></div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
</div>
Krom kolumnpurigo ĉe respondemaj rompopunktoj, vi eble bezonos restarigi kompensojn, puŝojn aŭ tirojn . Vidu ĉi tion en ago en la kradekzemplo .
<div class="row">
<div class="col-sm-5 col-md-6">.col-sm-5 .col-md-6</div>
<div class="col-sm-5 col-sm-offset-2 col-md-6 col-md-offset-0">.col-sm-5 .col-sm-offset-2 .col-md-6 .col-md-offset-0</div>
</div>
<div class="row">
<div class="col-sm-6 col-md-5 col-lg-6">.col-sm-6 .col-md-5 .col-lg-6</div>
<div class="col-sm-6 col-md-5 col-md-offset-2 col-lg-6 col-lg-offset-0">.col-sm-6 .col-md-5 .col-md-offset-2 .col-lg-6 .col-lg-offset-0</div>
</div>
Movu kolumnojn dekstren uzante .col-md-offset-*
klasojn. Ĉi tiuj klasoj pliigas la maldekstran marĝenon de kolono per *
kolumnoj. Ekzemple, .col-md-offset-4
moviĝas .col-md-4
super kvar kolumnoj.
<div class="row">
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>
</div>
<div class="row">
<div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
<div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
</div>
<div class="row">
<div class="col-md-6 col-md-offset-3">.col-md-6 .col-md-offset-3</div>
</div>
Vi ankaŭ povas superregi kompensojn de pli malaltaj kradaj niveloj kun .col-*-offset-0
klasoj.
<div class="row">
<div class="col-xs-6 col-sm-4">
</div>
<div class="col-xs-6 col-sm-4">
</div>
<div class="col-xs-6 col-xs-offset-3 col-sm-4 col-sm-offset-0">
</div>
</div>
Por nesti vian enhavon kun la defaŭlta krado, aldonu novan .row
kaj aron da .col-sm-*
kolumnoj en ekzistanta .col-sm-*
kolumno. Nestitaj vicoj devus inkluzivi aron da kolumnoj kiuj sumiĝas ĝis 12 aŭ malpli (ne necesas, ke vi uzu ĉiujn 12 disponeblajn kolumnojn).
<div class="row">
<div class="col-sm-9">
Level 1: .col-sm-9
<div class="row">
<div class="col-xs-8 col-sm-6">
Level 2: .col-xs-8 .col-sm-6
</div>
<div class="col-xs-4 col-sm-6">
Level 2: .col-xs-4 .col-sm-6
</div>
</div>
</div>
</div>
Facile ŝanĝu la ordon de niaj enkonstruitaj kradaj kolumnoj kun .col-md-push-*
kaj .col-md-pull-*
modifklasoj.
<div class="row">
<div class="col-md-9 col-md-push-3">.col-md-9 .col-md-push-3</div>
<div class="col-md-3 col-md-pull-9">.col-md-3 .col-md-pull-9</div>
</div>
Krom antaŭkonstruitaj kradaj klasoj por rapidaj aranĝoj, Bootstrap inkluzivas Malpli da variabloj kaj miksaĵoj por rapide generi viajn proprajn simplajn, semantikajn aranĝojn.
Variabloj determinas la nombron da kolumnoj, la defluillarĝon, kaj la amaskomunikilaron demandpunkton ĉe kiu komenci flosajn kolumnojn. Ni uzas ĉi tiujn por generi la antaŭdifinitajn kradklasojn dokumentitajn supre, same kiel por la kutimaj miksaĵoj listigitaj sube.
@grid-columns: 12;
@grid-gutter-width: 30px;
@grid-float-breakpoint: 768px;
Miksinoj estas uzitaj lige kun la kradvariabloj por generi semantikan CSS por individuaj kradkolumnoj.
// Creates a wrapper for a series of columns
.make-row(@gutter: @grid-gutter-width) {
// Then clear the floated columns
.clearfix();
@media (min-width: @screen-sm-min) {
margin-left: (@gutter / -2);
margin-right: (@gutter / -2);
}
// Negative margin nested rows out to align the content of columns
.row {
margin-left: (@gutter / -2);
margin-right: (@gutter / -2);
}
}
// Generate the extra small columns
.make-xs-column(@columns; @gutter: @grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: (@gutter / 2);
padding-right: (@gutter / 2);
// Calculate width based on number of columns available
@media (min-width: @grid-float-breakpoint) {
float: left;
width: percentage((@columns / @grid-columns));
}
}
// Generate the small columns
.make-sm-column(@columns; @gutter: @grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: (@gutter / 2);
padding-right: (@gutter / 2);
// Calculate width based on number of columns available
@media (min-width: @screen-sm-min) {
float: left;
width: percentage((@columns / @grid-columns));
}
}
// Generate the small column offsets
.make-sm-column-offset(@columns) {
@media (min-width: @screen-sm-min) {
margin-left: percentage((@columns / @grid-columns));
}
}
.make-sm-column-push(@columns) {
@media (min-width: @screen-sm-min) {
left: percentage((@columns / @grid-columns));
}
}
.make-sm-column-pull(@columns) {
@media (min-width: @screen-sm-min) {
right: percentage((@columns / @grid-columns));
}
}
// Generate the medium columns
.make-md-column(@columns; @gutter: @grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: (@gutter / 2);
padding-right: (@gutter / 2);
// Calculate width based on number of columns available
@media (min-width: @screen-md-min) {
float: left;
width: percentage((@columns / @grid-columns));
}
}
// Generate the medium column offsets
.make-md-column-offset(@columns) {
@media (min-width: @screen-md-min) {
margin-left: percentage((@columns / @grid-columns));
}
}
.make-md-column-push(@columns) {
@media (min-width: @screen-md-min) {
left: percentage((@columns / @grid-columns));
}
}
.make-md-column-pull(@columns) {
@media (min-width: @screen-md-min) {
right: percentage((@columns / @grid-columns));
}
}
// Generate the large columns
.make-lg-column(@columns; @gutter: @grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: (@gutter / 2);
padding-right: (@gutter / 2);
// Calculate width based on number of columns available
@media (min-width: @screen-lg-min) {
float: left;
width: percentage((@columns / @grid-columns));
}
}
// Generate the large column offsets
.make-lg-column-offset(@columns) {
@media (min-width: @screen-lg-min) {
margin-left: percentage((@columns / @grid-columns));
}
}
.make-lg-column-push(@columns) {
@media (min-width: @screen-lg-min) {
left: percentage((@columns / @grid-columns));
}
}
.make-lg-column-pull(@columns) {
@media (min-width: @screen-lg-min) {
right: percentage((@columns / @grid-columns));
}
}
Vi povas modifi la variablojn al viaj propraj kutimaj valoroj, aŭ simple uzi la miksaĵojn kun iliaj defaŭltaj valoroj. Jen ekzemplo de uzado de la defaŭltaj agordoj por krei du-kolumnan aranĝon kun interspaco.
.wrapper {
.make-row();
}
.content-main {
.make-lg-column(8);
}
.content-secondary {
.make-lg-column(3);
.make-lg-column-offset(1);
}
<div class="wrapper">
<div class="content-main">...</div>
<div class="content-secondary">...</div>
</div>
Ĉiuj HTML-titoloj, <h1>
tra <h6>
, estas haveblaj. .h1
tra .h6
klasoj ankaŭ haveblas, por kiam vi volas kongrui kun la tiparo de titolo sed ankoraŭ volas ke via teksto estu montrata enlinie.
h1. Bootstrap-titolo |
Duongrasa 36px |
h2. Bootstrap-titolo |
Duongrasa 30px |
h3. Bootstrap-titolo |
Duongrasa 24px |
h4. Bootstrap-titolo |
Duongrasa 18px |
h5. Bootstrap-titolo |
Duongrasa 14px |
h6. Bootstrap-titolo |
Duongrasa 12px |
<h1>h1. Bootstrap heading</h1>
<h2>h2. Bootstrap heading</h2>
<h3>h3. Bootstrap heading</h3>
<h4>h4. Bootstrap heading</h4>
<h5>h5. Bootstrap heading</h5>
<h6>h6. Bootstrap heading</h6>
Kreu pli malpezan, sekundaran tekston en iu ajn titolo kun ĝenerala <small>
etikedo aŭ la .small
klaso.
h1. Bootstrap-titolo Malĉefa teksto |
h2. Bootstrap-titolo Malĉefa teksto |
h3. Bootstrap-titolo Malĉefa teksto |
h4. Bootstrap-titolo Malĉefa teksto |
h5. Bootstrap-titolo Malĉefa teksto |
h6. Bootstrap-titolo Malĉefa teksto |
<h1>h1. Bootstrap heading <small>Secondary text</small></h1>
<h2>h2. Bootstrap heading <small>Secondary text</small></h2>
<h3>h3. Bootstrap heading <small>Secondary text</small></h3>
<h4>h4. Bootstrap heading <small>Secondary text</small></h4>
<h5>h5. Bootstrap heading <small>Secondary text</small></h5>
<h6>h6. Bootstrap heading <small>Secondary text</small></h6>
La tutmonda defaŭlto de Bootstrap font-size
estas 14px , kun a line-height
de 1.428 . Ĉi tio estas aplikata al la <body>
kaj ĉiuj alineoj. Krome, <p>
(alineoj) ricevas malsupran marĝenon de duono de ilia komputita linio-alteco (10px defaŭlte).
Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec ullamcorper nulla non metus auctor fringilla. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla.
Mecenas sed diam eget risus varius blandit sit amet non magna. Donec id elit non mi porta gravida at eget metus. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.
<p>...</p>
Elstarigu alineon aldonante .lead
.
Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus.
<p class="lead">...</p>
La tipografia skalo baziĝas sur du Malpli variabloj en variabloj.malpli : @font-size-base
kaj @line-height-base
. La unua estas la baza tiparo-grandeco uzata ĉie kaj la dua estas la bazlinia alteco. Ni uzas tiujn variablojn kaj iun simplan matematikon por krei la randojn, remburaĵojn kaj linio-altojn de ĉiuj niaj tipoj kaj pli. Agordu ilin kaj Bootstrap adaptiĝas.
Por reliefigi tekston pro ĝia graveco en alia kunteksto, uzu la <mark>
etikedon.
Vi povas uzi la marketikedon porreliefigiteksto.
You can use the mark tag to <mark>highlight</mark> text.
Por indiki blokojn de teksto kiuj estis forigitaj uzu la <del>
etikedon.
Ĉi tiu linio de teksto estas traktata kiel forigita teksto.
<del>This line of text is meant to be treated as deleted text.</del>
Por indiki tekstoblokojn kiuj ne plu rilatas uzu la <s>
etikedon.
Ĉi tiu linio de teksto estas traktata kiel ne plu preciza.
<s>This line of text is meant to be treated as no longer accurate.</s>
Por indiki aldonojn al la dokumento uzu la <ins>
etikedon.
Ĉi tiu linio de teksto estas traktata kiel aldono al la dokumento.
<ins>This line of text is meant to be treated as an addition to the document.</ins>
Por substreki tekston uzu la <u>
etikedon.
Ĉi tiu linio de teksto prezentiĝos kiel substrekita
<u>This line of text will render as underlined</u>
Uzu la defaŭltajn emfazajn etikedojn de HTML kun malpezaj stiloj.
Por malemfazi enliniajn aŭ blokojn de teksto, uzu la <small>
etikedon por agordi tekston je 85% la grandeco de la gepatro. Titolelementoj ricevas sian propran font-size
por nestitaj <small>
elementoj.
Vi povas alternative uzi enlinian elementon kun .small
anstataŭ iu ajn <small>
.
Ĉi tiu linio de teksto estas intencita esti traktata kiel bela preskribo.
<small>This line of text is meant to be treated as fine print.</small>
Por emfazi fragmenton de teksto kun pli peza tiparo.
La sekva fragmento de teksto estas prezentita kiel grasa teksto .
<strong>rendered as bold text</strong>
Por emfazi fragmenton de teksto kun kursivo.
La sekva fragmento de teksto estas prezentita kiel kursiva teksto .
<em>rendered as italicized text</em>
Bonvolu uzi <b>
kaj <i>
en HTML5. <b>
celas reliefigi vortojn aŭ frazojn sen transdoni aldonan gravecon dum <i>
estas plejparte por voĉo, teknikaj terminoj ktp.
Facile realigu tekston al komponantoj kun tekstaj vicigoklasoj.
Maldekstre vicigita teksto.
Centra vicigita teksto.
Dekstre vicigita teksto.
Pravigita teksto.
Neniu envolvi tekston.
<p class="text-left">Left aligned text.</p>
<p class="text-center">Center aligned text.</p>
<p class="text-right">Right aligned text.</p>
<p class="text-justify">Justified text.</p>
<p class="text-nowrap">No wrap text.</p>
Transformu tekston en komponantojn kun klasoj de tekstaj majuskloj.
Minuskla teksto.
Majuskla teksto.
Majuskla teksto.
<p class="text-lowercase">Lowercased text.</p>
<p class="text-uppercase">Uppercased text.</p>
<p class="text-capitalize">Capitalized text.</p>
Stiligita efektivigo de HTML-a <abbr>
elemento por mallongigoj kaj akronimoj por montri la vastigitan version sur ŝvebado. Mallongigoj kun title
atributo havas malpezan punktitan malsupran randon kaj helpkursoron sur ŝvebado, provizante plian kuntekston dum ŝvebado kaj al uzantoj de helpaj teknologioj.
Mallongigo de la vorto atributo estas attr .
<abbr title="attribute">attr</abbr>
Aldonu .initialism
al mallongigo por iomete pli malgranda tiparo.
HTML estas la plej bona afero ekde tranĉaĵigita pano.
<abbr title="HyperText Markup Language" class="initialism">HTML</abbr>
Prezentu kontaktinformojn por la plej proksima prapatro aŭ la tuta laboro. Konservu formatadon finante ĉiujn liniojn per <br>
.
<address>
<strong>Twitter, Inc.</strong><br>
1355 Market Street, Suite 900<br>
San Francisco, CA 94103<br>
<abbr title="Phone">P:</abbr> (123) 456-7890
</address>
<address>
<strong>Full Name</strong><br>
<a href="mailto:#">[email protected]</a>
</address>
Por citado de enhavoblokoj de alia fonto ene de via dokumento.
Envolvi <blockquote>
ajnan HTML kiel la citaĵo. Por rektaj citaĵoj, ni rekomendas <p>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
<blockquote>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
</blockquote>
Stilo kaj enhavo ŝanĝas por simplaj varioj sur normo <blockquote>
.
Aldonu <footer>
por identigi la fonton. Envolvu la nomon de la fontverko en <cite>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
<blockquote>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
<footer>Someone famous in <cite title="Source Title">Source Title</cite></footer>
</blockquote>
Aldonu .blockquote-reverse
por blokcitaĵo kun dekstre vicigita enhavo.
<blockquote class="blockquote-reverse">
...
</blockquote>
Listo de eroj en kiuj la ordo ne eksplicite gravas.
<ul>
<li>...</li>
</ul>
Listo de eroj en kiuj la ordo eksplicite gravas .
<ol>
<li>...</li>
</ol>
Forigu la defaŭltan list-style
kaj maldekstran marĝenon sur listaĵoj (nur tujaj infanoj). Ĉi tio validas nur por tujaj filaj listeroj , kio signifas, ke vi devos aldoni la klason ankaŭ por iuj nestitaj listoj.
<ul class="list-unstyled">
<li>...</li>
</ul>
Metu ĉiujn listaĵojn sur unu linion kun display: inline-block;
iom da malpeza kompletigo.
<ul class="list-inline">
<li>...</li>
</ul>
Listo de terminoj kun iliaj rilataj priskriboj.
<dl>
<dt>...</dt>
<dd>...</dd>
</dl>
Faru terminojn kaj priskribojn en <dl>
linio flank-al-flanke. Komencas stakigita kiel defaŭlta <dl>
s, sed kiam la navbar pligrandiĝas, do ĉi tiuj faru.
<dl class="dl-horizontal">
<dt>...</dt>
<dd>...</dd>
</dl>
Horizontalaj priskriblistoj detranĉos terminojn kiuj estas tro longaj por konveni en la maldekstra kolumno kun text-overflow
. En pli mallarĝaj vidfenestroj, ili ŝanĝos al la defaŭlta staplita aranĝo.
Envolvu enliniajn fragmentojn de kodo per <code>
.
<section>
devus esti envolvita kiel enlinia.
For example, <code><section></code> should be wrapped as inline.
Uzu la<kbd>
por indiki enigon kiu estas kutime enigita per klavaro.
To switch directories, type <kbd>cd</kbd> followed by the name of the directory.<br>
To edit settings, press <kbd><kbd>ctrl</kbd> + <kbd>,</kbd></kbd>
Uzu <pre>
por pluraj linioj de kodo. Nepre eskapu iujn ajn angulajn krampojn en la kodo por taŭga bildigo.
<p>Ekzempla teksto ĉi tie...</p>
<pre><p>Sample text here...</p></pre>
Vi povas laŭvole aldoni la.pre-scrollable
klason, kiu starigos maksimuman altecon de 350px kaj disponigos y-akson rulobreton.
Por indiki variablojn uzu la <var>
etikedon.
y = m x + b
<var>y</var> = <var>m</var><var>x</var> + <var>b</var>
Por indiki blokojn specimeno eligo de programo uzu la <samp>
etikedon.
Ĉi tiu teksto estas traktata kiel specimena eligo de komputila programo.
<samp>This text is meant to be treated as sample output from a computer program.</samp>
Por baza stilo—malpeza remburaĵo kaj nur horizontalaj disigiloj—aldonu la bazan klason .table
al iu ajn <table>
. Eble ŝajnas super redunda, sed konsiderante la vastan uzadon de tabeloj por aliaj kromprogramoj kiel kalendaroj kaj dato-elektiloj, ni elektis izoli niajn kutimajn tabelstilojn.
# | Antaŭnomo | Familia nomo | Uzantnomo |
---|---|---|---|
1 | Mark | Otto | @mdo |
2 | Jakobo | Thornton | @graso |
3 | Larry | la birdo |
<table class="table">
...
</table>
Uzu .table-striped
por aldoni zebro-striadon al iu tabelvico ene de la <tbody>
.
Striitaj tabloj estas stilitaj per la :nth-child
CSS-elektilo, kiu ne estas disponebla en Internet Explorer 8.
# | Antaŭnomo | Familia nomo | Uzantnomo |
---|---|---|---|
1 | Mark | Otto | @mdo |
2 | Jakobo | Thornton | @graso |
3 | Larry | la birdo |
<table class="table table-striped">
...
</table>
Aldonu .table-bordered
por randoj sur ĉiuj flankoj de la tablo kaj ĉeloj.
# | Antaŭnomo | Familia nomo | Uzantnomo |
---|---|---|---|
1 | Mark | Otto | @mdo |
2 | Jakobo | Thornton | @graso |
3 | Larry | la birdo |
<table class="table table-bordered">
...
</table>
Aldoni .table-hover
por ebligi ŝveban staton sur tabelvicoj ene de <tbody>
.
# | Antaŭnomo | Familia nomo | Uzantnomo |
---|---|---|---|
1 | Mark | Otto | @mdo |
2 | Jakobo | Thornton | @graso |
3 | Larry | la birdo |
<table class="table table-hover">
...
</table>
Aldonu .table-condensed
por fari tablojn pli kompaktajn tranĉante ĉela remburaĵo en duono.
# | Antaŭnomo | Familia nomo | Uzantnomo |
---|---|---|---|
1 | Mark | Otto | @mdo |
2 | Jakobo | Thornton | @graso |
3 | Larry la Birdo |
<table class="table table-condensed">
...
</table>
Uzu kuntekstajn klasojn por kolorigi tabelvicojn aŭ individuajn ĉelojn.
Klaso | Priskribo |
---|---|
.active |
Aplikas la ŝveban koloron al aparta vico aŭ ĉelo |
.success |
Indikas sukcesan aŭ pozitivan agon |
.info |
Indikas neŭtralan informan ŝanĝon aŭ agon |
.warning |
Indikas averton, kiu eble bezonas atenton |
.danger |
Indikas danĝeran aŭ eble negativan agon |
# | Kolumna titolo | Kolumna titolo | Kolumna titolo |
---|---|---|---|
1 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
2 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
3 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
4 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
5 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
6 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
7 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
8 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
9 | Kolumna enhavo | Kolumna enhavo | Kolumna enhavo |
<!-- On rows -->
<tr class="active">...</tr>
<tr class="success">...</tr>
<tr class="warning">...</tr>
<tr class="danger">...</tr>
<tr class="info">...</tr>
<!-- On cells (`td` or `th`) -->
<tr>
<td class="active">...</td>
<td class="success">...</td>
<td class="warning">...</td>
<td class="danger">...</td>
<td class="info">...</td>
</tr>
Uzi koloron por aldoni signifon al tabelvico aŭ individua ĉelo nur provizas vidan indikon, kiu ne estos transdonita al uzantoj de helpaj teknologioj - kiel ekranlegiloj. Certigu, ke informoj indikitaj per la koloro estas aŭ evidenta de la enhavo mem (la videbla teksto en la koncerna tabelvico/ĉelo), aŭ estas inkluzivita per alternativaj rimedoj, kiel aldona teksto kaŝita kun la .sr-only
klaso.
Kreu respondemajn tabelojn envolvante iujn ajn .table
por .table-responsive
fari ilin rulumi horizontale sur malgrandaj aparatoj (sub 768px). Vidante sur io ajn pli granda ol 768px larĝa, vi ne vidos diferencon en ĉi tiuj tabeloj.
Respondema tabeloj uzas overflow-y: hidden
, kiu detranĉas ajnan enhavon kiu iras preter la malsupraj aŭ supraj randoj de la tabelo. Aparte, ĉi tio povas detranĉi falmenuojn kaj aliajn triajn fenestraĵojn.
Fajrovulpo havas iun mallertan kamparan stilon implikantan width
tion malhelpas la respondeman tabelon. Ĉi tio ne povas esti anstataŭita sen specifa hako de Firefox, kiun ni ne provizas en Bootstrap:
@-moz-document url-prefix() {
fieldset { display: table-cell; }
}
Por pliaj informoj, legu ĉi tiun respondon de Stack Overflow .
# | Tabelo titolo | Tabelo titolo | Tabelo titolo | Tabelo titolo | Tabelo titolo | Tabelo titolo |
---|---|---|---|---|---|---|
1 | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo |
2 | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo |
3 | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo |
# | Tabelo titolo | Tabelo titolo | Tabelo titolo | Tabelo titolo | Tabelo titolo | Tabelo titolo |
---|---|---|---|---|---|---|
1 | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo |
2 | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo |
3 | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo | Tabelĉelo |
<div class="table-responsive">
<table class="table">
...
</table>
</div>
Individuaj formularaj kontroloj aŭtomate ricevas iun tutmondan stilon. Ĉiuj tekstaj <input>
, <textarea>
kaj <select>
elementoj kun .form-control
estas width: 100%;
defaŭlte agordita. Envolvu etikedojn kaj kontrolojn .form-group
por optimuma interspaco.
<form>
<div class="form-group">
<label for="exampleInputEmail1">Email address</label>
<input type="email" class="form-control" id="exampleInputEmail1" placeholder="Email">
</div>
<div class="form-group">
<label for="exampleInputPassword1">Password</label>
<input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
</div>
<div class="form-group">
<label for="exampleInputFile">File input</label>
<input type="file" id="exampleInputFile">
<p class="help-block">Example block-level help text here.</p>
</div>
<div class="checkbox">
<label>
<input type="checkbox"> Check me out
</label>
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
Ne miksu formgrupojn rekte kun eniggrupoj . Anstataŭe, nestu la eniggrupon ene de la formogrupo.
Aldonu .form-inline
al via formularo (kiu ne devas esti <form>
) por maldekstre vicigitaj kaj enlini-blokaj kontroloj. Ĉi tio validas nur por formoj en vidfenestroj, kiuj estas almenaŭ 768px larĝaj.
Enigaĵoj kaj elektoj width: 100%;
aplikiĝis defaŭlte en Bootstrap. Ene de enliniaj formoj, ni rekomencigas tion por width: auto;
ke pluraj kontroloj povu loĝi sur la sama linio. Depende de via aranĝo, aldonaj kutimaj larĝoj povas esti postulataj.
Ekranlegiloj havos problemojn kun viaj formoj se vi ne inkluzivas etikedon por ĉiu enigo. Por ĉi tiuj enliniaj formoj, vi povas kaŝi la etikedojn uzante la .sr-only
klason. Ekzistas pliaj alternativaj metodoj provizi etikedon por helpaj teknologioj, kiel ekzemple la aria-label
, aria-labelledby
aŭ title
atributo. Se neniu el ĉi tiuj ĉeestas, ekranlegantoj povas uzi la placeholder
atributon, se ĉeestas, sed notu ke uzo de placeholder
kiel anstataŭaĵo por aliaj etikedmetodoj ne estas konsilita.
<form class="form-inline">
<div class="form-group">
<label for="exampleInputName2">Name</label>
<input type="text" class="form-control" id="exampleInputName2" placeholder="Jane Doe">
</div>
<div class="form-group">
<label for="exampleInputEmail2">Email</label>
<input type="email" class="form-control" id="exampleInputEmail2" placeholder="[email protected]">
</div>
<button type="submit" class="btn btn-default">Send invitation</button>
</form>
<form class="form-inline">
<div class="form-group">
<label class="sr-only" for="exampleInputEmail3">Email address</label>
<input type="email" class="form-control" id="exampleInputEmail3" placeholder="Email">
</div>
<div class="form-group">
<label class="sr-only" for="exampleInputPassword3">Password</label>
<input type="password" class="form-control" id="exampleInputPassword3" placeholder="Password">
</div>
<div class="checkbox">
<label>
<input type="checkbox"> Remember me
</label>
</div>
<button type="submit" class="btn btn-default">Sign in</button>
</form>
<form class="form-inline">
<div class="form-group">
<label class="sr-only" for="exampleInputAmount">Amount (in dollars)</label>
<div class="input-group">
<div class="input-group-addon">$</div>
<input type="text" class="form-control" id="exampleInputAmount" placeholder="Amount">
<div class="input-group-addon">.00</div>
</div>
</div>
<button type="submit" class="btn btn-primary">Transfer cash</button>
</form>
Uzu la antaŭdifinitajn kradklasojn de Bootstrap por vicigi etikedojn kaj grupojn de formularaj kontroloj en horizontala aranĝo aldonante .form-horizontal
al la formo (kiu ne devas esti <form>
). Farante tion ŝanĝas .form-group
s por konduti kiel kradaj vicoj, do ne bezonas .row
.
<form class="form-horizontal">
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<input type="email" class="form-control" id="inputEmail3" placeholder="Email">
</div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">Password</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="inputPassword3" placeholder="Password">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="checkbox">
<label>
<input type="checkbox"> Remember me
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default">Sign in</button>
</div>
</div>
</form>
Ekzemploj de normaj formularaj kontroloj subtenataj en ekzempla formo-aranĝo.
Plej ofta formkontrolo, tekst-bazitaj enigkampoj. Inkluzivas subtenon por ĉiuj HTML5-tipoj: text
, password
, datetime
, datetime-local
, date
, month
, time
, week
, number
, email
, url
, search
, tel
, kaj color
.
Enigaĵoj nur estos plene stilitaj se ili type
estas ĝuste deklaritaj.
<input type="text" class="form-control" placeholder="Text input">
Por aldoni integran tekston aŭ butonojn antaŭ kaj/aŭ post iu tekstbazita <input>
, kontrolu la eniggrupon komponanton .
Formkontrolo kiu subtenas plurajn liniojn de teksto. Ŝanĝu rows
atributon laŭbezone.
<textarea class="form-control" rows="3"></textarea>
Markobutonoj estas por elekti unu aŭ plurajn opciojn en listo, dum radioj estas por elekti unu opcion el multaj.
Malebligitaj markobutonoj kaj radioj estas subtenataj, sed por provizi "ne permesitan" kursoron sur ŝvebado de la gepatro <label>
, vi devos aldoni la .disabled
klason al la gepatro .radio
, .radio-inline
, .checkbox
, aŭ .checkbox-inline
.
<div class="checkbox">
<label>
<input type="checkbox" value="">
Option one is this and that—be sure to include why it's great
</label>
</div>
<div class="checkbox disabled">
<label>
<input type="checkbox" value="" disabled>
Option two is disabled
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked>
Option one is this and that—be sure to include why it's great
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="optionsRadios" id="optionsRadios2" value="option2">
Option two can be something else and selecting it will deselect option one
</label>
</div>
<div class="radio disabled">
<label>
<input type="radio" name="optionsRadios" id="optionsRadios3" value="option3" disabled>
Option three is disabled
</label>
</div>
Uzu la .checkbox-inline
aŭ .radio-inline
klasojn sur serio de markobutonoj aŭ radioj por kontroloj kiuj aperas sur la sama linio.
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox1" value="option1"> 1
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox2" value="option2"> 2
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox3" value="option3"> 3
</label>
<label class="radio-inline">
<input type="radio" name="inlineRadioOptions" id="inlineRadio1" value="option1"> 1
</label>
<label class="radio-inline">
<input type="radio" name="inlineRadioOptions" id="inlineRadio2" value="option2"> 2
</label>
<label class="radio-inline">
<input type="radio" name="inlineRadioOptions" id="inlineRadio3" value="option3"> 3
</label>
Se vi ne havas tekston ene de la <label>
, la enigo estas poziciigita kiel vi atendus. Nuntempe nur funkcias ĉe ne-enliniaj markobutonoj kaj radioj. Memoru ankoraŭ provizi iun formon de etikedo por helpaj teknologioj (ekzemple, uzante aria-label
).
<div class="checkbox">
<label>
<input type="checkbox" id="blankCheckbox" value="option1" aria-label="...">
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="blankRadio" id="blankRadio1" value="option1" aria-label="...">
</label>
</div>
Notu, ke multaj denaskaj elektaj menuoj—nome en Safaro kaj Chrome—havas rondajn angulojn, kiuj ne povas esti modifitaj per border-radius
propraĵoj.
<select class="form-control">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
Por <select>
kontroloj kun la multiple
atributo, pluraj opcioj estas montritaj defaŭlte.
<select multiple class="form-control">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
Kiam vi devas meti simplan tekston apud formularetikedo ene de formo, uzu la .form-control-static
klason sur <p>
.
<form class="form-horizontal">
<div class="form-group">
<label class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<p class="form-control-static">[email protected]</p>
</div>
</div>
<div class="form-group">
<label for="inputPassword" class="col-sm-2 control-label">Password</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="inputPassword" placeholder="Password">
</div>
</div>
</form>
<form class="form-inline">
<div class="form-group">
<label class="sr-only">Email</label>
<p class="form-control-static">[email protected]</p>
</div>
<div class="form-group">
<label for="inputPassword2" class="sr-only">Password</label>
<input type="password" class="form-control" id="inputPassword2" placeholder="Password">
</div>
<button type="submit" class="btn btn-default">Confirm identity</button>
</form>
Ni forigas la defaŭltajn outline
stilojn en iuj formularaj kontroloj kaj aplikas a box-shadow
en ĝia loko por :focus
.
:focus
-ŝtatoLa supra ekzempla enigo uzas kutimajn stilojn en nia dokumentaro por montri la :focus
staton sur .form-control
.
Aldonu la disabled
bulean atributon al enigo por malhelpi uzantinteragojn. Malebligitaj enigaĵoj aperas pli malpezaj kaj aldonas not-allowed
kursoron.
<input class="form-control" id="disabledInput" type="text" placeholder="Disabled input here..." disabled>
Aldonu la disabled
atributon al a <fieldset>
por malŝalti ĉiujn kontrolojn ene de la <fieldset>
samtempe.
<a>
Defaŭlte, retumiloj traktos ĉiujn denaskajn formkontrolojn ( <input>
, <select>
kaj <button>
elementoj) ene de <fieldset disabled>
kiel malŝaltitaj, malhelpante ambaŭ klavarajn kaj musajn interagojn sur ili. Tamen, se via formo ankaŭ inkluzivas <a ... class="btn btn-*">
elementojn, ĉi tiuj nur ricevos stilon pointer-events: none
. Kiel notite en la sekcio pri malfunkciigita stato por butonoj (kaj specife en la subsekcio por ankroelementoj), ĉi tiu CSS-posedaĵo ankoraŭ ne estas normigita kaj ne estas plene subtenata en Opera 18 kaj sube, aŭ en Internet Explorer 11, kaj gajnis ne malhelpas klavaruzantojn povi enfokusigi aŭ aktivigi ĉi tiujn ligilojn. Do por esti sekura, uzu kutiman JavaScript por malŝalti tiajn ligilojn.
Dum Bootstrap aplikos ĉi tiujn stilojn en ĉiuj retumiloj, Internet Explorer 11 kaj sube ne plene subtenas la disabled
atributon sur <fieldset>
. Uzu kutiman JavaScript por malŝalti la kamparon en ĉi tiuj retumiloj.
<form>
<fieldset disabled>
<div class="form-group">
<label for="disabledTextInput">Disabled input</label>
<input type="text" id="disabledTextInput" class="form-control" placeholder="Disabled input">
</div>
<div class="form-group">
<label for="disabledSelect">Disabled select menu</label>
<select id="disabledSelect" class="form-control">
<option>Disabled select</option>
</select>
</div>
<div class="checkbox">
<label>
<input type="checkbox"> Can't check this
</label>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</fieldset>
</form>
Aldonu la readonly
bulean atributon al enigo por malhelpi modifon de la valoro de la enigo. Nurlegeblaj enigaĵoj ŝajnas pli malpezaj (same kiel malebligitaj enigaĵoj), sed konservas la norman kursoron.
<input class="form-control" type="text" placeholder="Readonly input here…" readonly>
Bloknivela helpteksto por formularaj kontroloj.
Helpteksto devus esti eksplicite asociita kun la formo-kontrolo al kiu ĝi rilatas uzante la aria-describedby
atributon. Ĉi tio certigos, ke helpaj teknologioj - kiel ekranlegiloj - anoncos ĉi tiun helptekston kiam la uzanto enfokusigas aŭ eniras la kontrolon.
<label class="sr-only" for="inputHelpBlock">Input with help text</label>
<input type="text" id="inputHelpBlock" class="form-control" aria-describedby="helpBlock">
...
<span id="helpBlock" class="help-block">A block of help text that breaks onto a new line and may extend beyond one line.</span>
Bootstrap inkluzivas validigajn stilojn por eraroj, avertoj kaj sukcesaj statoj sur formularaj kontroloj. Por uzi, aldonu .has-warning
, .has-error
, aŭ .has-success
al la gepatra elemento. Ajna .control-label
, .form-control
, kaj .help-block
ene de tiu elemento ricevos la validigajn stilojn.
Uzi ĉi tiujn validigajn stilojn por indiki la staton de formo-kontrolo nur provizas vidan, kolor-bazitan indikon, kiu ne estos transdonita al uzantoj de helpaj teknologioj - kiel ekranlegiloj - aŭ al kolorblindaj uzantoj.
Certigu, ke alternativa indiko de ŝtato ankaŭ estas provizita. Ekzemple, vi povas inkluzivi sugeston pri stato en la <label>
teksto de la formo-kontrolo mem (kiel estas la kazo en la sekva kodekzemplo), inkluzivi Glyphicon (kun taŭga alternativa teksto uzante la .sr-only
klason - vidu la Glyphicon-ekzemploj ), aŭ disponigante aldona helpa tekstobloko. Specife por helpaj teknologioj, malvalidaj formkontroloj ankaŭ povas esti asignitaj aria-invalid="true"
atributo.
<div class="form-group has-success">
<label class="control-label" for="inputSuccess1">Input with success</label>
<input type="text" class="form-control" id="inputSuccess1" aria-describedby="helpBlock2">
<span id="helpBlock2" class="help-block">A block of help text that breaks onto a new line and may extend beyond one line.</span>
</div>
<div class="form-group has-warning">
<label class="control-label" for="inputWarning1">Input with warning</label>
<input type="text" class="form-control" id="inputWarning1">
</div>
<div class="form-group has-error">
<label class="control-label" for="inputError1">Input with error</label>
<input type="text" class="form-control" id="inputError1">
</div>
<div class="has-success">
<div class="checkbox">
<label>
<input type="checkbox" id="checkboxSuccess" value="option1">
Checkbox with success
</label>
</div>
</div>
<div class="has-warning">
<div class="checkbox">
<label>
<input type="checkbox" id="checkboxWarning" value="option1">
Checkbox with warning
</label>
</div>
</div>
<div class="has-error">
<div class="checkbox">
<label>
<input type="checkbox" id="checkboxError" value="option1">
Checkbox with error
</label>
</div>
</div>
Vi ankaŭ povas aldoni laŭvolajn rimarkigajn ikonojn kun la aldono de .has-feedback
kaj la dekstra ikono.
Reago-ikonoj funkcias nur kun tekstaj <input class="form-control">
elementoj.
Mana poziciigado de reago-ikonoj estas postulata por enigaĵoj sen etikedo kaj por eniggrupoj kun aldonaĵo dekstre. Vi estas forte instigitaj provizi etikedojn por ĉiuj enigaĵoj pro alireblaj kialoj. Se vi volas malhelpi etikedojn montriĝi, kaŝu ilin kun la .sr-only
klaso. Se vi devas fari sen etikedoj, ĝustigu la top
valoron de la sugesta ikono. Por eniggrupoj, alĝustigu la right
valoron al taŭga piksela valoro depende de la larĝo de via aldonaĵo.
Por certigi, ke helpaj teknologioj - kiel ekranlegiloj - ĝuste transdonas la signifon de ikono, kroma kaŝita teksto estu inkludita kun la .sr-only
klaso kaj eksplicite asociita kun la formokontrolo al kiu ĝi rilatas uzante aria-describedby
. Alternative, certigu, ke la signifo (ekzemple, la fakto ke estas averto por aparta tekst-enirkampo) estas transdonita en iu alia formo, kiel ekzemple ŝanĝado de la teksto de la reala <label>
asociita kun la formularkontrolo.
Kvankam la sekvaj ekzemploj jam mencias la validigan staton de siaj respektivaj formkontroloj en la <label>
teksto mem, la supra tekniko (uzante .sr-only
tekston kaj aria-describedby
) estis inkluzivita por ilustraj celoj.
<div class="form-group has-success has-feedback">
<label class="control-label" for="inputSuccess2">Input with success</label>
<input type="text" class="form-control" id="inputSuccess2" aria-describedby="inputSuccess2Status">
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputSuccess2Status" class="sr-only">(success)</span>
</div>
<div class="form-group has-warning has-feedback">
<label class="control-label" for="inputWarning2">Input with warning</label>
<input type="text" class="form-control" id="inputWarning2" aria-describedby="inputWarning2Status">
<span class="glyphicon glyphicon-warning-sign form-control-feedback" aria-hidden="true"></span>
<span id="inputWarning2Status" class="sr-only">(warning)</span>
</div>
<div class="form-group has-error has-feedback">
<label class="control-label" for="inputError2">Input with error</label>
<input type="text" class="form-control" id="inputError2" aria-describedby="inputError2Status">
<span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true"></span>
<span id="inputError2Status" class="sr-only">(error)</span>
</div>
<div class="form-group has-success has-feedback">
<label class="control-label" for="inputGroupSuccess1">Input group with success</label>
<div class="input-group">
<span class="input-group-addon">@</span>
<input type="text" class="form-control" id="inputGroupSuccess1" aria-describedby="inputGroupSuccess1Status">
</div>
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputGroupSuccess1Status" class="sr-only">(success)</span>
</div>
<form class="form-horizontal">
<div class="form-group has-success has-feedback">
<label class="control-label col-sm-3" for="inputSuccess3">Input with success</label>
<div class="col-sm-9">
<input type="text" class="form-control" id="inputSuccess3" aria-describedby="inputSuccess3Status">
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputSuccess3Status" class="sr-only">(success)</span>
</div>
</div>
<div class="form-group has-success has-feedback">
<label class="control-label col-sm-3" for="inputGroupSuccess2">Input group with success</label>
<div class="col-sm-9">
<div class="input-group">
<span class="input-group-addon">@</span>
<input type="text" class="form-control" id="inputGroupSuccess2" aria-describedby="inputGroupSuccess2Status">
</div>
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputGroupSuccess2Status" class="sr-only">(success)</span>
</div>
</div>
</form>
<form class="form-inline">
<div class="form-group has-success has-feedback">
<label class="control-label" for="inputSuccess4">Input with success</label>
<input type="text" class="form-control" id="inputSuccess4" aria-describedby="inputSuccess4Status">
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputSuccess4Status" class="sr-only">(success)</span>
</div>
</form>
<form class="form-inline">
<div class="form-group has-success has-feedback">
<label class="control-label" for="inputGroupSuccess3">Input group with success</label>
<div class="input-group">
<span class="input-group-addon">@</span>
<input type="text" class="form-control" id="inputGroupSuccess3" aria-describedby="inputGroupSuccess3Status">
</div>
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputGroupSuccess3Status" class="sr-only">(success)</span>
</div>
</form>
.sr-only
etikedojSe vi uzas la .sr-only
klason por kaŝi formularan kontrolon <label>
(prefere ol uzi aliajn etikedajn opciojn, kiel la aria-label
atributon), Bootstrap aŭtomate ĝustigos la pozicion de la ikono post kiam ĝi estas aldonita.
<div class="form-group has-success has-feedback">
<label class="control-label sr-only" for="inputSuccess5">Hidden label</label>
<input type="text" class="form-control" id="inputSuccess5" aria-describedby="inputSuccess5Status">
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputSuccess5Status" class="sr-only">(success)</span>
</div>
<div class="form-group has-success has-feedback">
<label class="control-label sr-only" for="inputGroupSuccess4">Input group with success</label>
<div class="input-group">
<span class="input-group-addon">@</span>
<input type="text" class="form-control" id="inputGroupSuccess4" aria-describedby="inputGroupSuccess4Status">
</div>
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>
<span id="inputGroupSuccess4Status" class="sr-only">(success)</span>
</div>
Agordu altecojn uzante klasojn kiel .input-lg
, kaj agordu larĝojn per kradaj kolumnaj klasoj kiel .col-lg-*
.
Kreu pli altajn aŭ pli mallongajn formkontrolojn, kiuj kongruas kun butongrandoj.
<input class="form-control input-lg" type="text" placeholder=".input-lg">
<input class="form-control" type="text" placeholder="Default input">
<input class="form-control input-sm" type="text" placeholder=".input-sm">
<select class="form-control input-lg">...</select>
<select class="form-control">...</select>
<select class="form-control input-sm">...</select>
Rapide grandumi etikedojn kaj formkontrolojn ene .form-horizontal
aldonante .form-group-lg
aŭ .form-group-sm
.
<form class="form-horizontal">
<div class="form-group form-group-lg">
<label class="col-sm-2 control-label" for="formGroupInputLarge">Large label</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="formGroupInputLarge" placeholder="Large input">
</div>
</div>
<div class="form-group form-group-sm">
<label class="col-sm-2 control-label" for="formGroupInputSmall">Small label</label>
<div class="col-sm-10">
<input class="form-control" type="text" id="formGroupInputSmall" placeholder="Small input">
</div>
</div>
</form>
Envolvu enigaĵojn en kradaj kolumnoj, aŭ iu ajn kutima gepatra elemento, por facile devigi deziratajn larĝojn.
<div class="row">
<div class="col-xs-2">
<input type="text" class="form-control" placeholder=".col-xs-2">
</div>
<div class="col-xs-3">
<input type="text" class="form-control" placeholder=".col-xs-3">
</div>
<div class="col-xs-4">
<input type="text" class="form-control" placeholder=".col-xs-4">
</div>
</div>
Uzu la butonklasojn sur <a>
, <button>
, aŭ <input>
elemento.
<a class="btn btn-default" href="#" role="button">Link</a>
<button class="btn btn-default" type="submit">Button</button>
<input class="btn btn-default" type="button" value="Input">
<input class="btn btn-default" type="submit" value="Submit">
Dum butonklasoj povas esti uzataj sur <a>
kaj <button>
elementoj, nur <button>
elementoj estas subtenataj ene de niaj nav kaj navbar-komponentoj.
Se la <a>
elementoj estas uzataj por funkcii kiel butonoj - ekigante enpaĝan funkcion, anstataŭ navigi al alia dokumento aŭ sekcio ene de la nuna paĝo - ili ankaŭ devus ricevi taŭgan role="button"
.
Kiel plej bona praktiko, ni tre rekomendas uzi la <button>
elementon kiam ajn eblas por certigi kongruan trans-retumilon bildigon.
Interalie, estas cimo en Fajrovulpo <30 , kiu malhelpas al ni agordi la butonojn bazitajn sur, kaŭzante, ke ili ne precize kongruas kun la alteco de aliaj butonoj en Fajrovulpo line-height
.<input>
Uzu iun ajn el la disponeblaj butonklasoj por rapide krei stilitan butonon.
<!-- Standard button -->
<button type="button" class="btn btn-default">Default</button>
<!-- Provides extra visual weight and identifies the primary action in a set of buttons -->
<button type="button" class="btn btn-primary">Primary</button>
<!-- Indicates a successful or positive action -->
<button type="button" class="btn btn-success">Success</button>
<!-- Contextual button for informational alert messages -->
<button type="button" class="btn btn-info">Info</button>
<!-- Indicates caution should be taken with this action -->
<button type="button" class="btn btn-warning">Warning</button>
<!-- Indicates a dangerous or potentially negative action -->
<button type="button" class="btn btn-danger">Danger</button>
<!-- Deemphasize a button by making it look like a link while maintaining button behavior -->
<button type="button" class="btn btn-link">Link</button>
Uzi koloron por aldoni signifon al butono nur provizas vidan indikon, kiu ne estos transdonita al uzantoj de helpaj teknologioj - kiel ekranlegiloj. Certigu, ke informoj indikitaj per la koloro estas aŭ evidenta de la enhavo mem (la videbla teksto de la butono), aŭ estas inkluzivita per alternativaj rimedoj, kiel aldona teksto kaŝita kun la .sr-only
klaso.
Ĉu vi volas pli grandajn aŭ pli malgrandajn butonojn? Aldonu .btn-lg
, .btn-sm
, aŭ .btn-xs
por pliaj grandecoj.
<p>
<button type="button" class="btn btn-primary btn-lg">Large button</button>
<button type="button" class="btn btn-default btn-lg">Large button</button>
</p>
<p>
<button type="button" class="btn btn-primary">Default button</button>
<button type="button" class="btn btn-default">Default button</button>
</p>
<p>
<button type="button" class="btn btn-primary btn-sm">Small button</button>
<button type="button" class="btn btn-default btn-sm">Small button</button>
</p>
<p>
<button type="button" class="btn btn-primary btn-xs">Extra small button</button>
<button type="button" class="btn btn-default btn-xs">Extra small button</button>
</p>
Kreu bloknivelajn butonojn—tiujn kiuj ampleksas la tutan larĝon de gepatro— aldonante .btn-block
.
<button type="button" class="btn btn-primary btn-lg btn-block">Block level button</button>
<button type="button" class="btn btn-default btn-lg btn-block">Block level button</button>
Butonoj aperos premitaj (kun pli malhela fono, pli malhela rando kaj enmetita ombro) kiam aktivaj. Por <button>
elementoj, ĉi tio estas farita per :active
. Por <a>
elementoj, ĝi estas farita per .active
. Tamen, vi povas uzi .active
sur <button>
s (kaj inkluzivi la aria-pressed="true"
atributon) se vi bezonas reprodukti la aktivan staton programe.
Ne necesas aldoni :active
ĉar ĝi estas pseŭdoklaso, sed se vi bezonas devigi la saman aspekton, daŭrigu kaj aldonu .active
.
<button type="button" class="btn btn-primary btn-lg active">Primary button</button>
<button type="button" class="btn btn-default btn-lg active">Button</button>
Aldonu la .active
klason al <a>
butonoj.
<a href="#" class="btn btn-primary btn-lg active" role="button">Primary link</a>
<a href="#" class="btn btn-default btn-lg active" role="button">Link</a>
Faru butonojn aspekti neklakeblaj per velkado de ili reen per opacity
.
Aldonu la disabled
atributon al <button>
butonoj.
<button type="button" class="btn btn-lg btn-primary" disabled="disabled">Primary button</button>
<button type="button" class="btn btn-default btn-lg" disabled="disabled">Button</button>
Se vi aldonas la disabled
atributon al <button>
, Interreto Explorer 9 kaj sube faros tekston griza kun aĉa tekst-ombro, kiun ni ne povas ripari.
Aldonu la .disabled
klason al <a>
butonoj.
<a href="#" class="btn btn-primary btn-lg disabled" role="button">Primary link</a>
<a href="#" class="btn btn-default btn-lg disabled" role="button">Link</a>
Ni uzas .disabled
ĉi tie kiel utilan klason, similan al la komuna .active
klaso, do ne necesas prefikso.
Ĉi tiu klaso uzas pointer-events: none
por provi malŝalti la ligan funkcion de <a>
s, sed tiu CSS-posedaĵo ankoraŭ ne estas normigita kaj ne estas plene subtenata en Opera 18 kaj sube, aŭ en Internet Explorer 11. Krome, eĉ en retumiloj kiuj subtenas pointer-events: none
klavaron. navigado restas netuŝita, kio signifas, ke videblaj klavaruzantoj kaj uzantoj de helpaj teknologioj ankoraŭ povos aktivigi ĉi tiujn ligilojn. Do por esti sekura, uzu kutiman JavaScript por malŝalti tiajn ligilojn.
Bildoj en Bootstrap 3 povas fariĝi respondemaj amika per aldono de la .img-responsive
klaso. Ĉi tio validas max-width: 100%;
, height: auto;
kaj display: block;
al la bildo tiel ke ĝi skalas bele al la gepatra elemento.
Por centri bildojn kiuj uzas la .img-responsive
klason, uzu .center-block
anstataŭ .text-center
. Vidu la sekcion de helpklasoj por pliaj detaloj pri .center-block
uzado.
En Internet Explorer 8-10, SVG-bildoj kun .img-responsive
estas misproporcie grandaj. Por ripari ĉi tion, aldonu width: 100% \9;
kie necese. Bootstrap ne aplikas ĉi tion aŭtomate ĉar ĝi kaŭzas komplikaĵojn al aliaj bildformatoj.
<img src="..." class="img-responsive" alt="Responsive image">
Aldonu klasojn al <img>
elemento por facile stiligi bildojn en iu ajn projekto.
Memoru, ke Interreto Explorer 8 mankas subteno por rondigitaj anguloj.
<img src="..." alt="..." class="img-rounded">
<img src="..." alt="..." class="img-circle">
<img src="..." alt="..." class="img-thumbnail">
Transdonu signifon per koloro per manpleno da emfazaj utilaj klasoj. Ĉi tiuj ankaŭ povas esti aplikataj al ligiloj kaj mallumiĝos dum ŝvebado same kiel niaj defaŭltaj ligaj stiloj.
Fusce dapibus, tellus ac cursus commodo, tortor mauris nibh.
Nullam id dolor id nibh ultricies vehicula ut id elit.
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
Mecenas sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem malesuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
<p class="text-muted">...</p>
<p class="text-primary">...</p>
<p class="text-success">...</p>
<p class="text-info">...</p>
<p class="text-warning">...</p>
<p class="text-danger">...</p>
Foje emfazaj klasoj ne povas esti aplikataj pro la specifeco de alia elektilo. Plejofte, sufiĉa solvo estas envolvi vian tekston en <span>
kun la klaso.
Uzi koloron por aldoni signifon nur provizas vidan indikon, kiu ne estos transdonita al uzantoj de helpaj teknologioj - kiel ekranlegiloj. Certigu, ke informoj indikitaj per la koloro estas aŭ evidentaj de la enhavo mem (la kontekstaj koloroj estas nur uzataj por plifortigi signifon kiu jam ĉeestas en la teksto/markado), aŭ estas inkluditaj per alternativaj rimedoj, kiel aldona teksto kaŝita kun la .sr-only
klaso . .
Simile al la kuntekstaj tekstaj kolorklasoj, facile agordu la fonon de elemento al iu ajn kunteksta klaso. Ankraj komponantoj mallumiĝos dum ŝvebado, same kiel la tekstaj klasoj.
Nullam id dolor id nibh ultricies vehicula ut id elit.
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
Mecenas sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem malesuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
<p class="bg-primary">...</p>
<p class="bg-success">...</p>
<p class="bg-info">...</p>
<p class="bg-warning">...</p>
<p class="bg-danger">...</p>
Foje kontekstaj fonklasoj ne povas esti aplikataj pro la specifeco de alia elektilo. En iuj kazoj, sufiĉa solvo estas envolvi la enhavon de via elemento en <div>
kun la klaso.
Kiel kun kuntekstaj koloroj , certigu, ke ajna signifo transdonita per koloro ankaŭ estas transdonita en formato kiu ne estas pure prezenta.
Uzu la ĝeneralan fermikonon por forĵeti enhavon kiel modalojn kaj atentigojn.
<button type="button" class="close" aria-label="Close"><span aria-hidden="true">×</span></button>
Uzu signojn por indiki falmenuman funkcion kaj direkton. Rimarku, ke la defaŭlta kamero inversiĝos aŭtomate en falmenuoj .
<span class="caret"></span>
Flosigu elementon maldekstren aŭ dekstren kun klaso. !important
estas inkluzivita por eviti specifecajn problemojn. Klasoj ankaŭ povas esti uzataj kiel miksinoj.
<div class="pull-left">...</div>
<div class="pull-right">...</div>
// Classes
.pull-left {
float: left !important;
}
.pull-right {
float: right !important;
}
// Usage as mixins
.element {
.pull-left();
}
.another-element {
.pull-right();
}
Agordu elementon al display: block
kaj centri per margin
. Havebla kiel miksaĵo kaj klaso.
<div class="center-block">...</div>
// Class
.center-block {
display: block;
margin-left: auto;
margin-right: auto;
}
// Usage as a mixin
.element {
.center-block();
}
Facile malplenigu float
s aldonante .clearfix
al la gepatra elemento . Utiligas la mikroklaran fiksaĵon kiel popularigitan de Nicolas Gallagher. Povas ankaŭ esti uzata kiel miksaĵo.
<!-- Usage as a class -->
<div class="clearfix">...</div>
// Mixin itself
.clearfix() {
&:before,
&:after {
content: " ";
display: table;
}
&:after {
clear: both;
}
}
// Usage as a mixin
.element {
.clearfix();
}
Devigi elementon esti montrita aŭ kaŝita ( inkluzive por ekranlegiloj ) per la uzo de .show
kaj .hidden
klasoj. Ĉi tiuj klasoj uzas !important
por eviti specifajn konfliktojn, same kiel la rapidaj flosiloj . Ili estas disponeblaj nur por bloknivela ŝanĝado. Ili ankaŭ povas esti uzataj kiel miksinoj.
.hide
disponeblas, sed ĝi ne ĉiam influas ekranlegilojn kaj estas malrekomendita ekde v3.0.1. Uzu .hidden
aŭ .sr-only
anstataŭe.
Krome, .invisible
povas esti uzata por ŝanĝi nur la videblecon de elemento, tio signifas, ke display
ĝi ne estas modifita kaj la elemento ankoraŭ povas influi la fluon de la dokumento.
<div class="show">...</div>
<div class="hidden">...</div>
// Classes
.show {
display: block !important;
}
.hidden {
display: none !important;
}
.invisible {
visibility: hidden;
}
// Usage as mixins
.element {
.show();
}
.another-element {
.hidden();
}
Kaŝi elementon al ĉiuj aparatoj krom ekranlegiloj kun .sr-only
. Kombinu .sr-only
kun .sr-only-focusable
por montri la elementon denove kiam ĝi estas fokusita (ekz. de klavara uzanto). Necesas por sekvi plej bonajn praktikojn pri alirebleco . Povas ankaŭ esti uzata kiel miksaĵoj.
<a class="sr-only sr-only-focusable" href="#content">Skip to main content</a>
// Usage as a mixin
.skip-navigation {
.sr-only();
.sr-only-focusable();
}
Uzu la .text-hide
klason aŭ miksaĵon por helpi anstataŭigi la tekstan enhavon de elemento per fonbildo.
<h1 class="text-hide">Custom heading</h1>
// Usage as a mixin
.heading {
.text-hide();
}
Por pli rapida evoluado por poŝtelefono, uzu ĉi tiujn utilajn klasojn por montri kaj kaŝi enhavon per aparato per amaskomunikila demando. Ankaŭ inkluzivitaj utilaj klasoj por ŝanĝi enhavon kiam presite.
Provu uzi ĉi tiujn sur limigita bazo kaj eviti krei tute malsamajn versiojn de la sama retejo. Anstataŭe, uzu ilin por kompletigi la prezenton de ĉiu aparato.
Uzu ununuran aŭ kombinaĵon de la disponeblaj klasoj por ŝanĝi enhavon tra vidpunktoj.
Ekstra malgrandaj aparatojTelefonoj (<768px) | Malgrandaj aparatojTablojdoj (≥768px) | Mezaj aparatojLabortabloj (≥992px) | Grandaj aparatojLabortabloj (≥1200px) | |
---|---|---|---|---|
.visible-xs-* |
Videbla | Kaŝita | Kaŝita | Kaŝita |
.visible-sm-* |
Kaŝita | Videbla | Kaŝita | Kaŝita |
.visible-md-* |
Kaŝita | Kaŝita | Videbla | Kaŝita |
.visible-lg-* |
Kaŝita | Kaŝita | Kaŝita | Videbla |
.hidden-xs |
Kaŝita | Videbla | Videbla | Videbla |
.hidden-sm |
Videbla | Kaŝita | Videbla | Videbla |
.hidden-md |
Videbla | Videbla | Kaŝita | Videbla |
.hidden-lg |
Videbla | Videbla | Videbla | Kaŝita |
Ekde v3.2.0, la .visible-*-*
klasoj por ĉiu rompopunkto venas en tri varioj, unu por ĉiu CSS- display
posedaĵvaloro listigita malsupre.
Grupo de klasoj | CSSdisplay |
---|---|
.visible-*-block |
display: block; |
.visible-*-inline |
display: inline; |
.visible-*-inline-block |
display: inline-block; |
Do, por ekstra malgrandaj ( xs
) ekranoj ekzemple, la disponeblaj .visible-*-*
klasoj estas: .visible-xs-block
, .visible-xs-inline
, kaj .visible-xs-inline-block
.
La klasoj .visible-xs
, .visible-sm
, .visible-md
, kaj .visible-lg
ankaŭ ekzistas, sed estas malrekomenditaj ekde v3.2.0 . Ili estas proksimume ekvivalentaj al .visible-*-block
, krom kun aldonaj specialaj kazoj por ŝanĝantaj <table>
-rilataj elementoj.
Simile al la regulaj respondemaj klasoj, uzu ĉi tiujn por ŝanĝi enhavon por presado.
Klasoj | Retumilo | Presi |
---|---|---|
.visible-print-block .visible-print-inline .visible-print-inline-block |
Kaŝita | Videbla |
.hidden-print |
Videbla | Kaŝita |
La klaso .visible-print
ankaŭ ekzistas sed estas malrekomendita ekde v3.2.0. Ĝi estas proksimume ekvivalenta al .visible-print-block
, krom kun kromaj specialaj kazoj por <table>
-rilataj elementoj.
Regrandigu vian retumilon aŭ ŝarĝu sur malsamaj aparatoj por testi la respondemajn utilajn klasojn.
Verdaj markmarkoj indikas, ke la elemento estas videbla en via nuna vidfenestro.
Ĉi tie, verdaj markmarkoj ankaŭ indikas, ke la elemento estas kaŝita en via nuna vidfenestro.
La CSS de Bootstrap estas konstruita sur Less, antaŭprocesoro kun plia funkcieco kiel variabloj, miksaĵoj kaj funkcioj por kompili CSS. Tiuj, kiuj serĉas uzi la fonton Malpli dosierojn anstataŭ niaj kompilitaj CSS-dosieroj, povas uzi la multajn variablojn kaj miksaĵojn, kiujn ni uzas tra la kadro.
Kradvariabloj kaj miksaĵoj estas kovritaj ene de la kradsistemo sekcio .
Bootstrap povas esti uzata en almenaŭ du manieroj: kun la kompilita CSS aŭ kun la fonto Malpli dosieroj. Por kompili la Malpli dosierojn, konsultu la sekcion Komenci pri kiel agordi vian evoluan medion por ruli la necesajn komandojn.
Triaj kompililoj povas funkcii kun Bootstrap, sed ili ne estas subtenataj de nia kerna teamo.
Variabloj estas uzataj tra la tuta projekto kiel maniero por centralizi kaj dividi ofte uzatajn valorojn kiel koloroj, interspaco aŭ tiparstakoj. Por kompleta paneo, bonvolu vidi la Customizer .
Facile uzu du kolorskemojn: grizskalo kaj semantika. Grizskalaj koloroj disponigas rapidan aliron al ofte uzataj nigraj nuancoj dum semantikaj inkluzivas diversajn kolorojn asignitajn al signifaj kontekstaj valoroj.
@gray-darker: lighten(#000, 13.5%); // #222
@gray-dark: lighten(#000, 20%); // #333
@gray: lighten(#000, 33.5%); // #555
@gray-light: lighten(#000, 46.7%); // #777
@gray-lighter: lighten(#000, 93.5%); // #eee
@brand-primary: darken(#428bca, 6.5%); // #337ab7
@brand-success: #5cb85c;
@brand-info: #5bc0de;
@brand-warning: #f0ad4e;
@brand-danger: #d9534f;
Uzu iun el ĉi tiuj koloraj variabloj kiel ili estas aŭ reasignu ilin al pli signifaj variabloj por via projekto.
// Use as-is
.masthead {
background-color: @brand-primary;
}
// Reassigned variables in Less
@alert-message-background: @brand-info;
.alert {
background-color: @alert-message-background;
}
Manpleno da variabloj por rapide agordi ŝlosilajn elementojn de la skeleto de via retejo.
// Scaffolding
@body-bg: #fff;
@text-color: @black-50;
Facile stilu viajn ligilojn kun la ĝusta koloro kun nur unu valoro.
// Variables
@link-color: @brand-primary;
@link-hover-color: darken(@link-color, 15%);
// Usage
a {
color: @link-color;
text-decoration: none;
&:hover {
color: @link-hover-color;
text-decoration: underline;
}
}
Notu, ke la @link-hover-color
uzas funkcion, alian mirindan ilon de Less, por aŭtomate krei la ĝustan ŝveban koloron. Vi povas uzi darken
, lighten
, saturate
, kaj desaturate
.
Facile agordu vian tiparon, tekstograndecon, gvidadon kaj pli per kelkaj rapidaj variabloj. Bootstrap uzas ĉi tiujn ankaŭ por provizi facilajn tipografiajn miksaĵojn.
@font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
@font-family-serif: Georgia, "Times New Roman", Times, serif;
@font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace;
@font-family-base: @font-family-sans-serif;
@font-size-base: 14px;
@font-size-large: ceil((@font-size-base * 1.25)); // ~18px
@font-size-small: ceil((@font-size-base * 0.85)); // ~12px
@font-size-h1: floor((@font-size-base * 2.6)); // ~36px
@font-size-h2: floor((@font-size-base * 2.15)); // ~30px
@font-size-h3: ceil((@font-size-base * 1.7)); // ~24px
@font-size-h4: ceil((@font-size-base * 1.25)); // ~18px
@font-size-h5: @font-size-base;
@font-size-h6: ceil((@font-size-base * 0.85)); // ~12px
@line-height-base: 1.428571429; // 20/14
@line-height-computed: floor((@font-size-base * @line-height-base)); // ~20px
@headings-font-family: inherit;
@headings-font-weight: 500;
@headings-line-height: 1.1;
@headings-color: inherit;
Du rapidaj variabloj por agordi la lokon kaj dosiernomon de viaj ikonoj.
@icon-font-path: "../fonts/";
@icon-font-name: "glyphicons-halflings-regular";
Komponantoj ĉie en Bootstrap uzas iujn defaŭltajn variablojn por fiksi komunajn valorojn. Jen la plej ofte uzataj.
@padding-base-vertical: 6px;
@padding-base-horizontal: 12px;
@padding-large-vertical: 10px;
@padding-large-horizontal: 16px;
@padding-small-vertical: 5px;
@padding-small-horizontal: 10px;
@padding-xs-vertical: 1px;
@padding-xs-horizontal: 5px;
@line-height-large: 1.33;
@line-height-small: 1.5;
@border-radius-base: 4px;
@border-radius-large: 6px;
@border-radius-small: 3px;
@component-active-color: #fff;
@component-active-bg: @brand-primary;
@caret-width-base: 4px;
@caret-width-large: 5px;
Vendistaj miksaĵoj estas miksaĵoj por helpi subteni plurajn foliumilojn inkluzivante ĉiujn koncernajn vendistajn prefiksojn en via kompilita CSS.
Restarigu la skatolan modelon de viaj komponantoj per unuopa miksaĵo. Por kunteksto, vidu ĉi tiun helpeman artikolon de Mozilo .
La miksaĵo estas malrekomendita ekde v3.2.0, kun la enkonduko de Autoprefixer. Por konservi malantaŭan kongruecon, Bootstrap daŭre uzos la miksaĵon interne ĝis Bootstrap v4.
.box-sizing(@box-model) {
-webkit-box-sizing: @box-model; // Safari <= 5
-moz-box-sizing: @box-model; // Firefox <= 19
box-sizing: @box-model;
}
Hodiaŭ ĉiuj modernaj retumiloj subtenas la ne-prefiksan border-radius
posedaĵon. Kiel tia, ne ekzistas .border-radius()
miksaĵo, sed Bootstrap inkluzivas ŝparvojojn por rapide rondigi du angulojn sur aparta flanko de objekto.
.border-top-radius(@radius) {
border-top-right-radius: @radius;
border-top-left-radius: @radius;
}
.border-right-radius(@radius) {
border-bottom-right-radius: @radius;
border-top-right-radius: @radius;
}
.border-bottom-radius(@radius) {
border-bottom-right-radius: @radius;
border-bottom-left-radius: @radius;
}
.border-left-radius(@radius) {
border-bottom-left-radius: @radius;
border-top-left-radius: @radius;
}
Se via celgrupo uzas la plej novajn kaj plej bonegajn retumilon kaj aparatojn, nepre nur uzi la box-shadow
posedaĵon memstare. Se vi bezonas subtenon por pli malnovaj Android (antaŭ-v4) kaj iOS-aparatoj (antaŭ iOS 5), uzu la malrekomenditan miksaĵon por preni la bezonatan.-webkit
prefikson.
La miksaĵo estas malrekomendita ekde v3.1.0, ĉar Bootstrap ne oficiale subtenas la malmodernajn platformojn, kiuj ne subtenas la norman posedaĵon. Por konservi malantaŭan kongruecon, Bootstrap daŭre uzos la miksaĵon interne ĝis Bootstrap v4.
Nepre uzu rgba()
kolorojn en viaj skatolaj ombroj, por ke ili miksu kiel eble plej perfekte kun fonoj.
.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) {
-webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1
box-shadow: @shadow;
}
Multoblaj miksaĵoj por fleksebleco. Agordu ĉiujn transirajn informojn per unu, aŭ specifu apartan prokraston kaj daŭron laŭbezone.
La miksaĵoj estas malrekomenditaj ekde v3.2.0, kun la enkonduko de Autoprefixer. Por konservi malantaŭan kongruecon, Bootstrap daŭre uzos la miksaĵojn interne ĝis Bootstrap v4.
.transition(@transition) {
-webkit-transition: @transition;
transition: @transition;
}
.transition-property(@transition-property) {
-webkit-transition-property: @transition-property;
transition-property: @transition-property;
}
.transition-delay(@transition-delay) {
-webkit-transition-delay: @transition-delay;
transition-delay: @transition-delay;
}
.transition-duration(@transition-duration) {
-webkit-transition-duration: @transition-duration;
transition-duration: @transition-duration;
}
.transition-timing-function(@timing-function) {
-webkit-transition-timing-function: @timing-function;
transition-timing-function: @timing-function;
}
.transition-transform(@transition) {
-webkit-transition: -webkit-transform @transition;
-moz-transition: -moz-transform @transition;
-o-transition: -o-transform @transition;
transition: transform @transition;
}
Rotacii, skali, traduki (movu), aŭ deklini ajnan objekton.
La miksaĵoj estas malrekomenditaj ekde v3.2.0, kun la enkonduko de Autoprefixer. Por konservi malantaŭan kongruecon, Bootstrap daŭre uzos la miksaĵojn interne ĝis Bootstrap v4.
.rotate(@degrees) {
-webkit-transform: rotate(@degrees);
-ms-transform: rotate(@degrees); // IE9 only
transform: rotate(@degrees);
}
.scale(@ratio; @ratio-y...) {
-webkit-transform: scale(@ratio, @ratio-y);
-ms-transform: scale(@ratio, @ratio-y); // IE9 only
transform: scale(@ratio, @ratio-y);
}
.translate(@x; @y) {
-webkit-transform: translate(@x, @y);
-ms-transform: translate(@x, @y); // IE9 only
transform: translate(@x, @y);
}
.skew(@x; @y) {
-webkit-transform: skew(@x, @y);
-ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
transform: skew(@x, @y);
}
.translate3d(@x; @y; @z) {
-webkit-transform: translate3d(@x, @y, @z);
transform: translate3d(@x, @y, @z);
}
.rotateX(@degrees) {
-webkit-transform: rotateX(@degrees);
-ms-transform: rotateX(@degrees); // IE9 only
transform: rotateX(@degrees);
}
.rotateY(@degrees) {
-webkit-transform: rotateY(@degrees);
-ms-transform: rotateY(@degrees); // IE9 only
transform: rotateY(@degrees);
}
.perspective(@perspective) {
-webkit-perspective: @perspective;
-moz-perspective: @perspective;
perspective: @perspective;
}
.perspective-origin(@perspective) {
-webkit-perspective-origin: @perspective;
-moz-perspective-origin: @perspective;
perspective-origin: @perspective;
}
.transform-origin(@origin) {
-webkit-transform-origin: @origin;
-moz-transform-origin: @origin;
-ms-transform-origin: @origin; // IE9 only
transform-origin: @origin;
}
Ununura miksaĵo por uzi ĉiujn animaciajn ecojn de CSS3 en unu deklaro kaj aliajn miksaĵojn por individuaj propraĵoj.
La miksaĵoj estas malrekomenditaj ekde v3.2.0, kun la enkonduko de Autoprefixer. Por konservi malantaŭan kongruecon, Bootstrap daŭre uzos la miksaĵojn interne ĝis Bootstrap v4.
.animation(@animation) {
-webkit-animation: @animation;
animation: @animation;
}
.animation-name(@name) {
-webkit-animation-name: @name;
animation-name: @name;
}
.animation-duration(@duration) {
-webkit-animation-duration: @duration;
animation-duration: @duration;
}
.animation-timing-function(@timing-function) {
-webkit-animation-timing-function: @timing-function;
animation-timing-function: @timing-function;
}
.animation-delay(@delay) {
-webkit-animation-delay: @delay;
animation-delay: @delay;
}
.animation-iteration-count(@iteration-count) {
-webkit-animation-iteration-count: @iteration-count;
animation-iteration-count: @iteration-count;
}
.animation-direction(@direction) {
-webkit-animation-direction: @direction;
animation-direction: @direction;
}
Agordu la opakecon por ĉiuj retumiloj kaj provizi filter
rezervilon por IE8.
.opacity(@opacity) {
opacity: @opacity;
// IE8 filter
@opacity-ie: (@opacity * 100);
filter: ~"alpha(opacity=@{opacity-ie})";
}
Provizu kuntekston por formularaj kontroloj ene de ĉiu kampo.
.placeholder(@color: @input-color-placeholder) {
&::-moz-placeholder { color: @color; } // Firefox
&:-ms-input-placeholder { color: @color; } // Internet Explorer 10+
&::-webkit-input-placeholder { color: @color; } // Safari and Chrome
}
Generu kolumnojn per CSS ene de ununura elemento.
.content-columns(@width; @count; @gap) {
-webkit-column-width: @width;
-moz-column-width: @width;
column-width: @width;
-webkit-column-count: @count;
-moz-column-count: @count;
column-count: @count;
-webkit-column-gap: @gap;
-moz-column-gap: @gap;
column-gap: @gap;
}
Facile turnu iujn ajn du kolorojn en fonan gradienton. Pli progresiĝu kaj starigu direkton, uzu tri kolorojn aŭ uzu radialan gradienton. Per unuopa miksaĵo vi ricevas ĉiujn prefiksajn sintaksojn, kiujn vi bezonos.
#gradient > .vertical(#333; #000);
#gradient > .horizontal(#333; #000);
#gradient > .radial(#333; #000);
Vi ankaŭ povas specifi la angulon de norma dukolora, linia gradiento:
#gradient > .directional(#333; #000; 45deg);
Se vi bezonas barbir-strian stilan gradienton, ankaŭ tio estas facila. Nur specifu ununuran koloron kaj ni supermetos diafanan blankan strion.
#gradient > .striped(#333; 45deg);
Pliigu la antaŭan kaj uzu tri kolorojn anstataŭe. Agordu la unuan koloron, la duan koloron, la kolorhalton de la dua koloro (procentvaloro kiel 25%) kaj la trian koloron per ĉi tiuj miksaĵoj:
#gradient > .vertical-three-colors(#777; #333; 25%; #000);
#gradient > .horizontal-three-colors(#777; #333; 25%; #000);
Atentu! Se vi iam bezonos forigi gradienton, nepre forigi ajnan IE-specifan filter
, kiun vi eble aldonis. Vi povas fari tion uzante la .reset-filter()
miksaĵon apud background-image: none;
.
Utilaj miksinoj estas miksinoj kiuj kombinas alie senrilatajn CSS-ecojn por atingi specifan celon aŭ taskon.
Forgesu aldoni class="clearfix"
al iu ajn elemento kaj anstataŭe aldonu la .clearfix()
miksaĵon kie konvene. Uzas la mikroklarfikson de Nicolas Gallagher .
// Mixin
.clearfix() {
&:before,
&:after {
content: " ";
display: table;
}
&:after {
clear: both;
}
}
// Usage
.container {
.clearfix();
}
Rapide centri ajnan elementon ene de sia patro. Postulas width
aŭ max-width
agordas.
// Mixin
.center-block() {
display: block;
margin-left: auto;
margin-right: auto;
}
// Usage
.container {
width: 940px;
.center-block();
}
Specifu la dimensiojn de objekto pli facile.
// Mixins
.size(@width; @height) {
width: @width;
height: @height;
}
.square(@size) {
.size(@size; @size);
}
// Usage
.image { .size(400px; 300px); }
.avatar { .square(48px); }
Facile agordu la opciojn de regrandigo por iu ajn tekstareo aŭ iu ajn alia elemento. Defaŭlte al normala retumila konduto ( both
).
.resizable(@direction: both) {
// Options: horizontal, vertical, both
resize: @direction;
// Safari fix
overflow: auto;
}
Facile detranĉu tekston per elipso per unuopa miksaĵo. Postulas elementon esti block
aŭ inline-block
nivelo.
// Mixin
.text-overflow() {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
// Usage
.branch-name {
display: inline-block;
max-width: 200px;
.text-overflow();
}
Specifu du bildvojojn kaj la @1x bildajn dimensiojn, kaj Bootstrap provizos @2x amaskomunikilan demandon. Se vi havas multajn bildojn por servi, konsideru skribi vian retinan bildon CSS permane en ununura amaskomunikila demando.
.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {
background-image: url("@{file-1x}");
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
background-image: url("@{file-2x}");
background-size: @width-1x @height-1x;
}
}
// Usage
.jumbotron {
.img-retina("/img/bg-1x.png", "/img/bg-2x.png", 100px, 100px);
}
Dum Bootstrap estas konstruita sur Less, ĝi ankaŭ havas oficialan Sass-havenon . Ni konservas ĝin en aparta GitHub-deponejo kaj pritraktas ĝisdatigojn per konverta skripto.
Ĉar la Sass-haveno havas apartan repo kaj servas iomete malsaman publikon, la enhavo de la projekto multe diferencas de la ĉefa Bootstrap-projekto. Ĉi tio certigas, ke la Sass-haveno estas tiel kongrua kun kiel eble plej multaj Sass-bazitaj sistemoj.
Vojo | Priskribo |
---|---|
lib/ |
Ruby-gemkodo (Sass-agordo, Rails kaj Compass-integriĝoj) |
tasks/ |
Konvertilaj skriptoj (fariĝante kontraŭflue Less al Sass) |
test/ |
Kompilaj provoj |
templates/ |
Kompasa pakaĵo manifesto |
vendor/assets/ |
Sass, JavaScript kaj tipardosieroj |
Rakefile |
Internaj taskoj, kiel rasti kaj konverti |
Vizitu la GitHub-deponejon de la haveno Sass por vidi ĉi tiujn dosierojn en ago.
Por informoj pri kiel instali kaj uzi Bootstrap por Sass, konsultu la GitHub-deponejon readme . Ĝi estas la plej ĝisdata fonto kaj inkluzivas informojn por uzi kun Rails, Compass kaj normaj Sass-projektoj.