Bootstrap, ó Twitter

Is foireann uirlisí é Bootstrap ó Twitter atá deartha chun tús a chur le forbairt aipeanna gréasáin agus suíomhanna.
Áiríonn sé bonn CSS agus HTML le haghaidh clóghrafaíocht, foirmeacha, cnaipí, táblaí, eangacha, nascleanúint, agus go leor eile.

Foláireamh nerd: Tá Bootstrap tógtha le Lúide agus dearadh é chun oibriú amach as an geata le brabhsálaithe nua-aimseartha i gcuimhne.

Hotlink an CSS

Chun an tús is tapúla agus is éasca a fháil, níl le déanamh ach cóip den phíosa seo isteach i do leathanach gréasáin.

Úsáid sé le Níos lú

A lucht leanúna ag baint úsáide as Lúide? Fadhb ar bith, ach clónáil an repo agus cuir na línte seo leis:

Forc ar GitHub

Íoslódáil, forc, tarraingt, saincheisteanna comhaid, agus níos mó leis an repo oifigiúil Bootstrap ar Github.

Bootstrap ar GitHub »

Stair

Sna laethanta tosaigh de Twitter, bhain innealtóirí úsáid as beagnach aon leabharlann a raibh siad eolach uirthi chun freastal ar riachtanais tosaigh. Thosaigh Bootstrap mar fhreagra ar na dúshláin a tháinig chun cinn agus a tháinig dlús leis an bhforbairt go tapa le linn an chéad seachtain haic ar Twitter.

Le cabhair agus aiseolas ó go leor innealtóirí ag Twitter, tá fás suntasach tagtha ar Bootstrap chun ní hamháin stíleanna bunúsacha a chuimsiú, ach patrúin dearaidh tosaigh níos galánta agus níos marthanaí.

Léigh tuilleadh ar dev.twitter.com ›

Tacaíocht bhrabhsálaí

Déantar tástáil agus tacaíocht do Bootstrap i mbrabhsálaithe móra nua-aimseartha mar Chrome, Safari, Internet Explorer, agus Firefox.

Thástáil agus tacaithe in Chrome, Safari, Internet Explorer, agus Firefox
  • Safari is déanaí
  • Google chrome is déanaí
  • Firefox 4+
  • Internet Explorer 7+

Cad atá san áireamh

Tagann Bootstrap le CSS tiomsaithe, gan tiomsú, agus teimpléid shamplacha.

  • Gach comhad bunaidh .less
  • CSS tiomsaithe go hiomlán agus mionghearrtha
  • Doiciméadú stíltreoraithe iomlán
  • Sampla de theimpléad leathanach (tuilleadh le teacht go luath)

Greille réamhshocraithe

Is é an córas greille réamhshocraithe a chuirtear ar fáil mar chuid de Bootstrap ná greille 16-colún 940px ar leithead. Is blas é den chóras greille 960 a bhfuil an-tóir air, ach gan an corrlach/stuáil bhreise ar an taobh clé agus ar dheis.

Sampla marcáil greille

Mar a léirítear anseo, is féidir leagan amach bunúsach a chruthú le dhá “cholún,” gach ceann acu a chuimsíonn roinnt de na 16 cholún bhunúsacha a shainmhínigh muid mar chuid dár gcóras greille. Féach ar na samplaí thíos le haghaidh tuilleadh éagsúlachtaí.

  1. <div rang="row"> aicme = "rá" >
  2. <div class = "span6 colúin" >
  3. ...
  4. </div>
  5. <div class = "span10 colúin" >
  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
4
6
6
8
8
5
11
16

Colúin fhritháireamh

4
8 fritháireamh 4
4 fritháireamh 4
4 fritháireamh 4
5 fritháireamh 3
5 fritháireamh 3
10 fritháireamh 6

Leagan amach seasta

Leagan amach bunúsach coimeádán 940px ar leithead, dírithe ar shuíomh nó ar aon leathanach.

  1. <comhlacht>
  2. <div class = "container" >
  3. ...
  4. </div>
  5. </corp>

Leagan amach sreabhach

Struchtúr solúbtha leathanach leachtach nó sreabhán le leithead íosta agus uasta agus barra taoibh clé. Go hiontach le haghaidh apps.

  1. <comhlacht>
  2. <div class = "container-fluid" >
  3. <div class = "barra taobh" >
  4. ...
  5. </div>
  6. <div rang = "content" >
  7. ...
  8. </div>
  9. </div>
  10. </corp>

Ceannteidil agus cóip

Ordlathas clóghrafach caighdeánach chun do leathanaigh ghréasáin a struchtúrú.

h1. Heading 1

h2. Heading 2

h3. Heading 3

h4. Heading 4

h5. Heading 5
h6. Heading 6

Example paragraph

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 ut id elit.

Example heading Has sub-heading…

Misc. elements

Using emphasis, addresses, & abbreviations

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

When to use

Emphasis tags (<strong> and <em>) should be used to indicate additional importance or emphasis of a word or phrase relative to its surrounding copy. Use <strong> for importance and <em> for stress emphasis.

Emphasis in a paragraph

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

Note: It's still okay to use <b> and <i> tags in HTML5, but they don't come with inherent styles anymore. <b> is meant to highlight words or phrases without conveying additional importance, while <i> is mostly for voice, technical terms, etc.

Addresses

The <address> element is used for contact information for its nearest ancestor, or the entire body of work. Here’s how it looks:

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

Note: Each line in an <address> must end with a line-break (<br />) or be wrapped in a block-level tag (e.g., <p>) to properly structure the content.

Abbreviations

For abbreviations and acronyms, use the <abbr> tag (<acronym> is deprecated in HTML5). Put the shorthand form within the tag and set a title for the complete name.

Blockquotes

<blockquote> <p> <small>

How to quote

To include a blockquote, wrap <blockquote> around <p> and <small> tags. Use the <small> element to cite your source and you'll get an em dash &mdash; before it.

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

Dr. Julius Hibbert

Lists

Unordered <ul>

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing elit
  • Integer molestie lorem at massa
  • Facilisis in 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 in 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

Ordered <ol>

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

Description dl

Description lists
A description list is perfect for defining terms.
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.

Building tables

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

Tables are great—for a lot of things. Great tables, however, need a bit of markup love to be useful, scalable, and readable (at the code level). Here are a few tips to help.

Always wrap your column headers in a <thead> such that hierarchy is <thead> > <tr> > <th>.

Similar to the column headers, all your table’s body content should be wrapped in a <tbody> so your hierarchy is <tbody> > <tr> > <td>.

Example: Default table styles

All tables will be automatically styled with only the essential borders to ensure readability and maintain structure. No need to add extra classes or attributes.

# First Name Last Name Language
1 Some One English
2 Joe Sixpack English
3 Stu Dent Code
  1. <table class="common-table">
  2. ...
  3. </table>

Example: Zebra-striped

Get a little fancy with your tables by adding zebra-striping—just add the .zebra-striped class.

# First Name Last Name Language
1 Some One English
2 Joe Sixpack English
3 Stu Dent Code

Note: Zebra-striping is a progressive enhancement not available for older browsers like IE8 and below.

  1. <table class="common-table zebra-striped">
  2. ...
  3. </table>

Example: Zebra-striped w/ TableSorter.js

Taking the previous example, we improve the usefulness of our tables by providing sorting functionality via jQuery and the Tablesorter plugin. Click any column’s header to change the sort.

# First Name Last Name Language
1 Your One English
2 Joe Sixpack English
3 Stu Dent Code
  1. <script src="js/jquery/jquery.tablesorter.min.js"></script>
  2. <script >
  3. $(function() {
  4. $("table#sortTableExample").tablesorter({ sortList: [[1,0]] });
  5. });
  6. </script>
  7. <table class="common-table zebra-striped">
  8. ...
  9. </table>

Default styles

All forms are given default styles to present them in a readable and scalable way. Styles are provided for text inputs, select lists, textareas, radio buttons and checkboxes, and buttons.

Example form legend
Some Value Here
Small snippet of help text
Example form legend
@
Example form legend
Note: Labels surround all the options for much larger click areas and a more usable form.
to All times are shown as Pacific Standard Time (GMT -08:00).
Block of help text to describe the field above if need be.
 

Stacked forms

Add .form-stacked to your form’s HTML and you’ll have labels on top of their fields instead of to their left. This works great if your forms are short or you have two columns of inputs for heavier forms.

Example form legend
Example form legend
Small snippet of help text
Note: Labels surround all the options for much larger click areas and a more usable form.
 

Buttons

As a convention, buttons are used for actions while links are used for objects. For instance, "Download" could be a button and "recent activity" could be a link.

All buttons default to a light gray style, but a blue .primary class is available. Plus, rolling your own styles is easy peasy.

Example buttons

Button styles can be applied to anything with the .btn applied. Typically you’ll want to apply these to only <a>, <button>, and select <input> elements. Here’s how it looks:

 

Alternate sizes

Fancy larger or smaller buttons? Have at it!

Disabled state

For buttons that are not active or are disabled by the app for one reason or another, use the disabled state. That’s .disabled for links and :disabled for <button> elements.

Links

Buttons

 

Basic alerts

One-line messages for highlighting the failure, possible failure, or success of an action. Particularly useful for forms.

×

Oh snap! Change this and that and try again.

×

Holy gaucamole! Best check yo self, you’re not looking too good.

×

Well done! You successfully read this alert message.

×

Heads up! This is an alert that needs your attention, but it’s not a huge priority just yet.

Block messages

For messages that require a bit of explanation, we have paragraph style alerts. These are perfect for bubbling up longer error messages, warning a user of a pending action, or just presenting information for more emphasis on the page.

×

Oh snap! You got an error! Change this and that and try again. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.

Take this action Or do this

×

Holy gaucamole! This is a warning! Best check yo self, you’re not looking too good. Nulla vitae elit libero, a pharetra augue. Praesent commodo cursus magna, vel scelerisque nisl consectetur et.

Take this action Or do this

×

Well done! You successfully read this alert message. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Maecenas faucibus mollis interdum.

Take this action Or do this

×

Heads up! This is an alert that needs your attention, but it’s not a huge priority just yet.

Take this action Or do this

Modals

Modals—dialogs or lightboxes—are great for contextual actions in situations where it’s important that the background context be maintained.

Tool Tips

Twipsies are super useful for aiding a confused user and pointing them in the right direction.

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.

below!
right!
left!
above!

Popovers

Use popovers to provide subtextual information to a page without affecting layout.

Popover Title

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

Bootstrap was built with Preboot, an open-source pack of mixins and variables to be used in conjunction with Less, a CSS preprocessor for faster and easier web development.

Check out how we used Preboot in Bootstrap and how you can make use of it should you choose to run Less on your next project.

How to use it

Use this option to make full use of Bootstrap’s Less variables, mixins, and nesting in CSS via javascript in your browser.

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

Not feeling the .js solution? Try the Less Mac app or use Node.js to compile when you deploy your code.

What’s included

Here are some of the highlights of what’s included in Twitter Bootstrap as part of Bootstrap. Head over to the Bootstrap website or Github project page to download and learn more.

Color variables

Variables in Less are perfect for maintaining and updating your CSS headache free. When you want to change a color value or a frequently used value, update it in one spot and you’re set.

  1. // Links
  2. @linkColor: #8b59c2;
  3. @linkColorHover: darken(@linkColor, 10);
  4. // Grays
  5. @black: #000;
  6. @grayDark: lighten(@black, 25%);
  7. @gray: lighten(@black, 50%);
  8. @grayLight: lighten(@black, 70%);
  9. @grayLighter: lighten(@black, 90%);
  10. @white: #fff;
  11. // Accent Colors
  12. @blue: #08b5fb;
  13. @green: #46a546;
  14. @red: #9d261d;
  15. @yellow: #ffc40d;
  16. @orange: #f89406;
  17. @pink: #c3325f;
  18. @purple: #7a43b6;
  19. // Baseline
  20. @baseline: 20px;

Commenting

Less also provides another style of commenting in addition to CSS’s normal /* ... */ syntax.

  1. // This is a comment
  2. /* This is also a comment */

Mixins up the wazoo

Mixins are basically includes or partials for CSS, allowing you to combine a block of code into one. They’re great for vendor prefixed properties like box-shadow, cross-browser gradients, font stacks, and more. Below is a sample of the mixins that are included with Bootstrap.

Font stacks

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

Gradients

  1. #gradient {
  2. .horizontal (@startColor: #555, @endColor: #333) {
  3. background-color: @endColor;
  4. background-repeat: repeat-x;
  5. background-image: -khtml-gradient(linear, left top, right top, from(@startColor), to(@endColor)); // Konqueror
  6. background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
  7. background-image: -ms-linear-gradient(left, @startColor, @endColor); // IE10
  8. background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
  9. background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
  10. background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
  11. -ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor); // IE8+
  12. filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor)); // IE6 & IE7
  13. background-image: linear-gradient(left, @startColor, @endColor); // Le standard
  14. }
  15. .vertical (@startColor: #555, @endColor: #333) {
  16. background-color: @endColor;
  17. background-repeat: repeat-x;
  18. background-image: -khtml-gradient(linear, left top, left bottom, from(@startColor), to(@endColor)); // Konqueror
  19. background-image: -moz-linear-gradient(@startColor, @endColor); // FF 3.6+
  20. background-image: -ms-linear-gradient(@startColor, @endColor); // IE10
  21. background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @startColor), color-stop(100%, @endColor)); // Safari 4+, Chrome 2+
  22. background-image: -webkit-linear-gradient(@startColor, @endColor); // Safari 5.1+, Chrome 10+
  23. background-image: -o-linear-gradient(@startColor, @endColor); // Opera 11.10
  24. -ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor); // IE8+
  25. filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor)); // IE6 & IE7
  26. background-image: linear-gradient(@startColor, @endColor); // The standard
  27. }
  28. .directional (@startColor: #555, @endColor: #333, @deg: 45deg) {
  29. ...
  30. }
  31. .vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 0.5, @endColor: #c3325f) {
  32. ...
  33. }
  34. }

Operations and grid system

Get fancy and perform some math to generate flexible and powerful mixins like the one below.

  1. // Griditude
  2. @gridColumns: 16;
  3. @gridColumnWidth: 40px;
  4. @gridGutterWidth: 20px;
  5. // Grid System
  6. .container {
  7. width: @siteWidth;
  8. margin: 0 auto;
  9. .clearfix();
  10. }
  11. .columns(@columnSpan: 1) {
  12. display: inline;
  13. float: left;
  14. width: (@gridColumnWidth * @columnSpan) + (@gridGutterWidth * (@columnSpan - 1));
  15. margin-left: @gridGutterWidth;
  16. &:first-child {
  17. margin-left: 0;
  18. }
  19. }
  20. .offset(@columnOffset: 1) {
  21. imeall - clé : ( @gridColumnWidth * @columnOffset ) + ( @gridGutterWidth * ( @columnOffset - 1 )) ! tábhachtach ;
  22. }