Bootstrap, ki soti nan Twitter

Bootstrap se yon zouti ki soti nan Twitter ki fèt pou lanse devlopman webapps ak sit.
Li gen ladann CSS de baz ak HTML pou tipografi, fòm, bouton, tab, kadriyaj, navigasyon, ak plis ankò.

Alèt nèrd: Bootstrap bati ak mwens e li te fèt pou travay soti nan pòtay la ak navigatè modèn nan tèt ou.

Hotlink CSS la

Pou kòmanse pi rapid ak pi fasil, jis kopye ti bout sa a nan paj wèb ou a.

Sèvi ak li ak mwens

Yon fanatik itilize Less? Pa gen pwoblèm, jis klonaj repo a epi ajoute liy sa yo:

Fork sou GitHub

Telechaje, fouchèt, rale, dosye pwoblèm, ak plis ankò ak repo ofisyèl Bootstrap sou Github.

Bootstrap sou GitHub »

Istwa

Nan premye jou Twitter yo, enjenyè yo te itilize prèske nenpòt bibliyotèk yo te abitye avèk yo pou satisfè egzijans front-end. Bootstrap te kòmanse kòm yon repons a defi yo te prezante ak devlopman rapidman akselere pandan premye Hackweek Twitter la.

Avèk èd ak fidbak anpil enjenyè nan Twitter, Bootstrap te grandi anpil pou li anglobe non sèlman estil debaz yo, men modèl konsepsyon devan pi elegant ak dirab.

Li plis sou dev.twitter.com ›

Sipò navigatè

Bootstrap teste ak sipòte nan gwo navigatè modèn tankou Chrome, Safari, Internet Explorer, ak Firefox.

Teste ak sipòte nan Chrome, Safari, Internet Explorer, ak Firefox
  • Dènye Safari
  • Dènye Google Chrome
  • Firefox 4+
  • Internet Explorer 7+
  • Opera 11

Ki sa ki enkli

Bootstrap vini konplè ak konpile CSS, non, ak modèl egzanp.

  • Tout fichye .mwens orijinal yo
  • Konplètman konpile ak minified CSS
  • Ranpli dokimantasyon styleguide
  • Egzanp paj modèl (plis ap vini byento)

Kadriyaj default

Sistèm kadriyaj default yo bay kòm yon pati nan Bootstrap se yon griy 940px lajè 16-kolòn. Li se yon gou nan sistèm nan kadriyaj popilè 960, men san yo pa Marge adisyonèl / padding sou bò gòch ak bò dwat yo.

Egzanp kadriyaj maketing

Jan yo montre la a, yo ka kreye yon layout debaz ak de "kolòn," yo chak kouvri yon kantite 16 kolòn fondamantal nou defini kòm yon pati nan sistèm kadriyaj nou an. Gade egzanp ki anba yo pou plis varyasyon.

  1. <div class = "ranje" >
  2. <div class = "span6 columns" >
  3. ...
  4. </div>
  5. <div class = "span10 columns" >
  6. ...
  7. </div>
  8. </div>
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
1
4
4
4
4
1/3
1/3
1/3
1/3
2/3
4
6
6
8
8
5
11
16

Kolòn konpanse

4
8 konpanse 4
1/3 konpanse 2/3s
4 konpanse 4
4 konpanse 4
5 konpanse 3
5 konpanse 3
10 konpanse 6

Layout fiks

Defo ak senp 940px lajè, Layout santre pou prèske nenpòt sitwèb oswa paj ki ofri pa yon sèl <div.container>.

  1. <kò>
  2. <div class = "kontenè" >
  3. ...
  4. </div>
  5. </kò>

Layout likid

Yon altènatif, fleksib estrikti paj likid ak min- ak max-lajè ak yon bò gòch. Bon pou aplikasyon ak dokiman.

  1. <kò>
  2. <div class = "kontenè-likid" >
  3. <div class = "sidebar" >
  4. ...
  5. </div>
  6. <div class = "kontni" >
  7. ...
  8. </div>
  9. </div>
  10. </kò>

Tit ak kopi

Yon yerachi tipografik estanda pou estrikti paj wèb ou yo.

Tout kadriyaj tipografik la baze sou de Less variables nan fichye preboot.less nou an: @basefontak @baseline. Premye a se gwosè font de baz yo itilize nan tout e dezyèm lan se wotè liy debaz la.

Nou itilize varyab sa yo, ak kèk matematik, pou kreye maj yo, paddings, ak liy-wotè nan tout kalite nou yo ak plis ankò.

h1. Tit 1

h2. Tit 2

h3. Tit 3

h4. Tit 4

h5. Tit 5
h6. Tit 6

Egzanp paragraf

Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus ak magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula ut id elit.

Egzanp tit Gen sou-tit...

Misk. eleman

Sèvi ak anfaz, adrès, ak abrevyasyon

<strong> <em> <address> <abbr>

Lè pou itilize

Tag anfaz ( <strong>ak <em>) ta dwe itilize pou endike plis enpòtans oswa anfaz yon mo oswa yon fraz anrapò ak kopi ki antoure l. Itilize <strong>pou enpòtans ak <em>pou mete aksan sou estrès .

Anfaz nan yon paragraf

Fusce dapibus , tellus ac cursus commodo , tortor mauris condimentum nibh , ut fermentum massa justo sit amet risus. Mecenas faucibus mollis interdum. Nulla vitae elit libero, a pharetra augue.

Remak: Li toujou oke pou itilize <b>ak <i>tag nan HTML5 epi yo pa bezwen estile fonse ak italik, respektivman (byenke si gen yon eleman plis semantik, sèvi ak li). <b>se vle di yo mete aksan sou mo oswa fraz san yo pa transmèt plis enpòtans, pandan y ap <i>se sitou pou vwa, tèm teknik, elatriye.

Adrès

Se <address>eleman nan itilize pou enfòmasyon kontak pou zansèt ki pi pre li yo, oswa tout kò travay la. Men ki jan li sanble:

Twitter, Inc.
795 Folsom Ave, Suite 600
San Francisco, CA 94107
P: (123) 456-7890

Remak: Chak liy nan yon <address>dwe fini ak yon kase liy ( <br />) oswa yo dwe vlope nan yon etikèt nivo blòk (egzanp, <p>) pou byen estriktire kontni an.

Abreviyasyon yo

Pou abrevyasyon ak akwonim, sèvi ak <abbr>tag ( <acronym>se depreche nan HTML5 ). Mete fòm kout la nan tag la epi mete yon tit pou non konplè a.

Blockquotes

<blockquote> <p> <small>

Ki jan yo site

Pou enkli yon blockquote, vlope <blockquote>ak <p>tags <small>. Sèvi ak <small>eleman nan site sous ou a epi w ap jwenn yon priz em &mdash;anvan li.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.

Doktè Julius Hibbert

Lis

San lòd<ul>

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing elit
  • Integer molestie lorem at massa
  • Facilisis nan pretium nisl aliquet
  • Nulla volutpat aliquam velit
    • Phasellus iaculis neque
    • Purus sodales ultricies
    • Vestibulum laoreet porttitor sem
    • Ac tristique libero volutpat at
  • Faucibus porta lacus fringilla vel
  • Aenean sit amet erat nunc
  • Eget porttitor lorem

Unstyled<ul.unstyled>

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing elit
  • Integer molestie lorem at massa
  • Facilisis nan pretium nisl aliquet
  • Nulla volutpat aliquam velit
    • Phasellus iaculis neque
    • Purus sodales ultricies
    • Vestibulum laoreet porttitor sem
    • Ac tristique libero volutpat at
  • Faucibus porta lacus fringilla vel
  • Aenean sit amet erat nunc
  • Eget porttitor lorem

Kòmande<ol>

  1. Lorem ipsum dolor sit amet
  2. Consectetur adipiscing elit
  3. Integer molestie lorem at massa
  4. Facilisis nan pretium nisl aliquet
  5. Nulla volutpat aliquam velit
  6. Faucibus porta lacus fringilla vel
  7. Aenean sit amet erat nunc
  8. Eget porttitor lorem

Deskripsyondl

Lis deskripsyon yo
Yon lis deskripsyon pafè pou defini tèm.
Euismod
Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.
Donec id elit non mi porta gravida at eget metus.
Malesuada porta
Etiam porta sem malesuada magna mollis euismod.

Bati tab

<table> <thead> <tbody> <tr> <th> <td> <colspan> <caption>

Tablo yo gwo-pou anpil bagay. Gwo tab, sepandan, bezwen yon ti jan nan renmen maketing yo dwe itil, évolutive, ak lizib (nan nivo kòd). Men kèk konsèy pou ede.

Toujou vlope tèt kolòn ou yo nan yon <thead>fason ki yerachi se <thead>> <tr>> <th>.

Menm jan ak tèt kolòn yo, tout kontni kò tab ou a ta dwe vlope nan yon <tbody>konsa yerachi ou a <tbody>> <tr>> <td>.

Egzanp: Styles tab default

Tout tab yo pral otomatikman estile ak sèlman fwontyè esansyèl yo asire lizibilite epi kenbe estrikti. Pa bezwen ajoute klas oswa atribi siplemantè.

# Premye Non Siyati Lang
1 Gen kèk Youn angle
2 Joe Sixpack angle
3 Stu Dent Kòd
  1. <tab>
  2. ...
  3. </tab>

Egzanp: Zèb-ray

Jwenn yon ti kras anpenpan ak tab ou lè w ajoute zebra-striping-jis ajoute .zebra-stripedklas la.

# Premye Non Siyati Lang
1 Gen kèk Youn angle
2 Joe Sixpack angle
3 Stu Dent Kòd

Remak: Zebra-striping se yon amelyorasyon pwogresif ki pa disponib pou pi gran navigatè tankou IE8 ak anba a.

  1. <table class = "zebra-ray" >
  2. ...
  3. </tab>

Egzanp: Zebra-ray w/ TableSorter.js

Pran egzanp anvan an, nou amelyore itilite tab nou yo lè nou bay fonksyonalite klasman atravè jQuery ak Plugin Tablesorter . Klike sou tèt nenpòt kolòn pou chanje klasman an.

# Premye Non Siyati Lang
1 Ou Youn angle
2 Joe Sixpack angle
3 Stu Dent Kòd
  1. <script src = "js/jquery/jquery.tablesorter.min.js" ></script>
  2. <script >
  3. $ ( fonksyon () {
  4. $ ( "tab#sortTableExample" ). tablesorter ({ sortList : [[ 1 , 0 ]] });
  5. });
  6. </script>
  7. <table class = "zebra-ray" >
  8. ...
  9. </tab>

Estil default

Tout fòm yo bay estil default yo prezante yo nan yon fason lizib ak évolutive. Yo bay estil pou antre tèks, lis chwazi, zòn tèks, bouton radyo ak kaz, ak bouton.

Egzanp fòm lejand
Gen kèk valè isit la
Ti bout tèks èd
Egzanp fòm lejand
@
Egzanp fòm lejand
Remak: Etikèt antoure tout opsyon yo pou zòn klike pi gwo ak yon fòm ki pi itil.
pou Tout lè yo montre kòm tan Abitan Creole (GMT -08:00).
Blòk tèks èd pou dekri jaden an pi wo a si sa nesesè.
 

Fòm anpile

Ajoute .form-stackedHTML fòm ou a epi w ap gen etikèt sou tèt jaden yo olye pou yo sou bò gòch yo. Sa a travay anpil si fòm ou yo kout oswa ou gen de kolòn nan entrain pou fòm pi lou.

Egzanp fòm lejand
Egzanp fòm lejand
Ti bout tèks èd
Remak: Etikèt antoure tout opsyon yo pou zòn klike pi gwo ak yon fòm ki pi itil.
 

Bouton

Kòm yon konvansyon, bouton yo itilize pou aksyon pandan y ap lyen yo itilize pou objè yo. Pou egzanp, "Download" ta ka yon bouton ak "aktivite ki sot pase" ta ka yon lyen.

Tout bouton pa default nan yon style gri limyè, men yon kantite klas fonksyonèl ka aplike pou diferan estil koulè. Klas sa yo genyen yon .primaryklas ble, yon klas ble limyè .info, yon klas vèt .successak yon klas wouj .danger. Anplis de sa, woule estil pwòp ou yo se fasil peasy.

Egzanp bouton

Styles bouton yo ka aplike nan nenpòt bagay ak .btnaplike a. Tipikman ou pral vle aplike sa yo nan sèlman <a>, <button>, ak <input>eleman chwazi. Men ki jan li sanble:

       

Lòt gwosè

Anpenpan bouton ki pi gwo oswa pi piti? Gen nan li!

Eta andikape

Pou bouton ki pa aktif oswa ki enfim nan aplikasyon an pou yon rezon oswa yon lòt, sèvi ak eta a andikape. Sa a .disabledpou lyen ak :disabledpou <button>eleman.

Lyen

Bouton

 

Alèt debaz yo

div.alert-message

Mesaj yon sèl liy pou mete aksan sou echèk, echèk posib, oswa siksè nan yon aksyon. Patikilyèman itil pou fòm.

×

Sentespri guacamole! Pi bon tcheke ou tèt ou, ou pa gade twò bon.

×

Oh menen! Chanje sa ak sa epi eseye ankò.

×

Byen fè! Ou byen li mesaj alèt sa a.

×

Tèt leve! Sa a se yon alèt ki bezwen atansyon ou, men li pa yon gwo priyorite jis ankò.

Bloke mesaj yo

div.alert-message.block-message

Pou mesaj ki mande yon ti eksplikasyon, nou gen alèt style paragraf. Sa yo pafè pou ebulisyon mesaj erè ki pi long, avèti yon itilizatè sou yon aksyon annatant, oswa jis prezante enfòmasyon pou plis anfaz sou paj la.

×

Sentespri guacamole! Sa a se yon avètisman! Pi bon tcheke ou tèt ou, ou pa gade twò bon. Nulla vitae elit libero, a pharetra augue. Praesent commodo cursus magna, vel scelerisque nisl consectetur et.

×

Oh menen! Ou gen yon erè! Chanje sa ak sa epi eseye ankò. Men, li pa gen okenn komodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.

×

Byen fè! Ou byen li mesaj alèt sa a. Cum sociis natoque penatibus ak magnis dis parturient montes, nascetur ridiculus mus. Mecenas faucibus mollis interdum.

×

Tèt leve! Sa a se yon alèt ki bezwen atansyon ou, men li pa yon gwo priyorite jis ankò.

Modal

Modèl-dyalòg oswa bwat limyè-yo bon pou aksyon kontèks nan sitiyasyon kote li enpòtan pou kontèks background yo kenbe.

Konsèy zouti

Twipsies yo trè itil pou ede yon itilizatè konfonn epi montre yo nan bon direksyon an.

Lorem ipsum dolar sit amet illo error ipsum veritatis aut iste perspiciatis iste voluptas natus illo quasi odit aut natus consequuntur consequuntur, aut natus illo voluptatem odit perspiciatis laudantium rem doloremque totam voluptas. Voluptasdicta eaque beatae aperiam ut enim voluptatem explicabo explicabo, voluptas quia odit fugit accusantium totam totam architecto explicabo sit quasi fugit fugit, totam doloremque unde sunt sed dicta quae accusantium fugit voluptas nemo voluptas voluptatem rem quae aut veritatis quasi quae.

anba!
dwa!
kite!
pi wo a!

Popovers

Sèvi ak popovers pou bay enfòmasyon subtext nan yon paj san yo pa afekte layout.

Popover Tit

Etiam porta sem malesuada magna mollis euismod. Mecenas faucibus mollis interdum. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.

Bootstrap te bati ak Preboot , yon pake sous louvri nan mixin ak varyab yo dwe itilize ansanm ak Less , yon preprosesè CSS pou devlopman entènèt pi rapid ak pi fasil.

Tcheke ki jan nou itilize Preboot nan Bootstrap ak ki jan ou ka sèvi ak li si ou chwazi kouri mwens sou pwochen pwojè ou a.

Ki jan yo sèvi ak li

Sèvi ak opsyon sa a pou fè tout itilizasyon Bootstrap a Less variables, mixins, ak nidifikasyon nan CSS atravè javascript nan navigatè ou a.

  1. <link rel = "stylesheet/less" href = "less/bootstrap.less" media = "all" />
  2. <script src = "js/less-1.1.3.min.js" ></script>

Ou pa santi solisyon .js la? Eseye aplikasyon Less Mac oswa itilize Node.js pou konpile lè w ap deplwaye kòd ou a.

Ki sa ki enkli

Men kèk nan sa ki enkli nan Twitter Bootstrap kòm yon pati nan Bootstrap. Ale sou sit entènèt Bootstrap la oswa paj pwojè Github pou telechaje ak aprann plis.

Varyab

Varyab nan Less yo pafè pou kenbe ak ajou CSS maltèt ou gratis. Lè ou vle chanje yon valè koulè oswa yon valè yo itilize souvan, mete ajou li nan yon sèl plas epi w ap fikse.

  1. // Lyen
  2. @linkColor : #8b59c2;
  3. @linkColorHover : fè nwa ( @linkColor , 10 );
  4.  
  5. // Gri
  6. @nwa : #000;
  7. @grayDark : aleje ( @black , 25 %);
  8. @gri : aleje ( @nwa , 50 %);
  9. @grayLight : aleje ( @nwa , 70 %);
  10. @grayLighter : aleje ( @nwa , 90 %);
  11. @blan : #fff;
  12.  
  13. // Koulè aksan
  14. @ble : #08b5fb;
  15. @vèt : #46a546;
  16. @wouj : #9d261d;
  17. @jòn : #ffc40d;
  18. @orange : #f89406;
  19. @woz : #c3325f;
  20. @vyolèt : #7a43b6;
  21.  
  22. // Kadriyaj debaz
  23. @basefont : 13px ;
  24. @debaz : 18px ;

Kòmantè

Mwens tou bay yon lòt style nan kòmantè anplis /* ... */sentaks nòmal CSS la.

  1. // Sa a se yon kòmantè
  2. /* Sa a se yon kòmantè tou */

Mixins moute wazoo a

Mixins yo fondamantalman gen ladan oswa pasyèl pou CSS, ki pèmèt ou konbine yon blòk nan kòd nan yon sèl. Yo bon pou pwopriyete prefiks machann tankou box-shadow, gradyan kwa-navigatè, pil font, ak plis ankò. Anba la a se yon echantiyon nan mixin yo ki enkli ak Bootstrap.

Pile font

  1. #font {
  2. . steno ( @pwa : nòmal , @size : 14px , @lineHeight : 20px ) {
  3. font - size : @size ;
  4. font - pwa : @weight ;
  5. liy - wotè : @lineHeight ;
  6. }
  7. . sans - serif ( @weight : nòmal , @size : 14px , @lineHeight : 20px ) {
  8. font - family : "Helvetica Neue" , ​​Helvetica , Arial , sans - serif ;
  9. font - size : @size ;
  10. font - pwa : @weight ;
  11. liy - wotè : @lineHeight ;
  12. }
  13. . serif ( @weight : nòmal , @size : 14px , @lineHeight : 20px ) {
  14. font - family : "Georgia" , Times New Roman , Times , sans - serif ;
  15. font - size : @size ;
  16. font - pwa : @weight ;
  17. liy - wotè : @lineHeight ;
  18. }
  19. . monospace ( @weight : nòmal , @size : 12px , @lineHeight : 20px ) {
  20. font - family : "Monaco" , Courier New , monospace ;
  21. font - size : @size ;
  22. font - pwa : @weight ;
  23. liy - wotè : @lineHeight ;
  24. }
  25. }

Gradyan

  1. #gradyan {
  2. . orizontal ( @startColor : #555, @endColor : #333) {
  3. background - koulè : @endColor ;
  4. background - repete : repete - x ;
  5. background - imaj : - khtml - gradyan ( lineyè , gòch anwo , dwat anwo , soti nan ( @startColor ), rive nan ( @endColor )); // Konkerè
  6. background - imaj : - moz - lineyè - gradyan ( agoch ​​, @startColor , @endColor ); // FF 3.6+
  7. background - imaj : - ms - lineyè - gradyan ( agoch ​​, @startColor , @endColor ); // IE10
  8. background - imaj : - webkit - gradyan ( lineyè , gòch anwo , dwat anwo , koulè - sispann ( 0 %, @startColor ), koulè - sispann ( 100 %, @endColor )); // Safari 4+, Chrome 2+
  9. background - imaj : - webkit - lineyè - gradyan ( agoch ​​, @startColor , @endColor ); // Safari 5.1+, Chrome 10+
  10. background - imaj : - o - lineyè - gradyan ( agoch ​​, @startColor , @endColor ); // Opera 11.10
  11. background - imaj : lineyè - gradyan ( agoch ​​, @startColor , @endColor ); // Le standard
  12. }
  13. . vètikal ( @startColor : #555, @endColor : #333) {
  14. background - koulè : @endColor ;
  15. background - repete : repete - x ;
  16. background - imaj : - khtml - gradyan ( lineyè , gòch anwo , gòch anba , soti nan ( @startColor ), rive nan ( @endColor )); // Konkerè
  17. background - imaj : - moz - lineyè - gradyan ( @startColor , @endColor ); // FF 3.6+
  18. background - imaj : - ms - lineyè - gradyan ( @startColor , @endColor ); // IE10
  19. background - imaj : - webkit - gradyan ( lineyè , gòch anwo , gòch anba , koulè - sispann ( 0 %, @startColor ), koulè - sispann ( 100 %, @endColor )); // Safari 4+, Chrome 2+
  20. background - imaj : - webkit - lineyè - gradyan ( @startColor , @endColor ); // Safari 5.1+, Chrome 10+
  21. background - imaj : - o - lineyè - gradyan ( @startColor , @endColor ); // Opera 11.10
  22. background - imaj : lineyè - gradyan ( @startColor , @endColor ); // Estanda a
  23. }
  24. . direksyon ( @startColor : #555, @endColor: #333, @deg: 45deg) {
  25. ...
  26. }
  27. . vètikal - twa - koulè ( @startColor : #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
  28. ...
  29. }
  30. }

Operasyon ak sistèm kadriyaj

Jwenn anpenpan epi fè kèk matematik pou jenere melanj fleksib ak pwisan tankou sa ki anba a.

  1. // Gritid
  2. @gridColumns : 16 ;
  3. @gridColumnWidth : 40px ;
  4. @gridGutterWidth : 20px ;
  5. @siteWidth : ( @gridColumns * @gridColumnWidth ) + ( @gridGutterWidth * ( @gridColumns - 1 ));
  6.  
  7. // Sistèm kadriyaj
  8. . veso {
  9. lajè : @siteWidth ;
  10. maj : 0 oto ;
  11. . clearfix ();
  12. }
  13. . kolòn ( @columnSpan : 1 ) {
  14. lajè : ( @gridColumnWidth * @columnSpan ) + ( @gridGutterWidth * ( @columnSpan - 1 ));
  15. }
  16. . konpanse ( @columnOffset : 1 ) {
  17. margin - left : ( @gridColumnWidth * @columnOffset ) + ( @gridGutterWidth * ( @columnOffset - 1 )) + @extraSpace ;
  18. }