CSS
Глобални CSS настройки, основни HTML елементи, стилизирани и подобрени с разширими класове и усъвършенствана мрежова система.
Глобални CSS настройки, основни HTML елементи, стилизирани и подобрени с разширими класове и усъвършенствана мрежова система.
Научете ниската информация за ключовите части от инфраструктурата на Bootstrap, включително нашия подход към по-добро, по-бързо и по-силно уеб развитие.
Bootstrap използва определени HTML елементи и CSS свойства, които изискват използването на HTML5 doctype. Включете го в началото на всички ваши проекти.
С Bootstrap 2 добавихме незадължителни удобни за мобилни устройства стилове за ключови аспекти на рамката. С Bootstrap 3 ние пренаписахме проекта, за да бъде удобен за мобилни устройства от самото начало. Вместо да добавят незадължителни мобилни стилове, те се изпичат направо в сърцевината. Всъщност Bootstrap е първо мобилен . Мобилните първи стилове могат да бъдат намерени в цялата библиотека вместо в отделни файлове.
За да осигурите правилно изобразяване и мащабиране с докосване, добавете мета маркера на прозореца за изглед към вашия <head>
.
Можете да деактивирате възможностите за мащабиране на мобилни устройства, като добавите user-scalable=no
към мета тага на viewport. Това деактивира мащабирането, което означава, че потребителите могат само да превъртат и води до това вашият сайт да се чувства малко повече като родно приложение. Като цяло не препоръчваме това на всеки сайт, така че бъдете внимателни!
Bootstrap задава основен глобален дисплей, типография и стилове на връзки. По-конкретно ние:
background-color: #fff;
наbody
@font-family-base
, @font-size-base
, и @line-height-base
като наша типографска основа@link-color
и приложете подчертаване на връзката само върху:hover
Тези стилове могат да бъдат намерени в scaffolding.less
.
За подобрено рендиране в различни браузъри използваме Normalize.css , проект на Николас Галахър и Джонатан Нийл .
Bootstrap изисква съдържащ елемент, за да обвие съдържанието на сайта и да постави нашата мрежова система. Можете да изберете един от двата контейнера, които да използвате във вашите проекти. Обърнете внимание, че поради padding
и много други, нито един контейнер не е вложен.
Използвайте .container
за реагиращ контейнер с фиксирана ширина.
Използвайте .container-fluid
за контейнер с пълна ширина, обхващащ цялата ширина на прозореца за изглед.
Bootstrap включва бърза, мобилна първа флуидна мрежова система, която подходящо мащабира до 12 колони с увеличаване на размера на устройството или прозореца за изглед. Той включва предварително дефинирани класове за лесни опции за оформление, както и мощни миксини за генериране на повече семантични оформления .
Мрежовите системи се използват за създаване на оформления на страници чрез поредица от редове и колони, които съдържат вашето съдържание. Ето как работи мрежовата система Bootstrap:
.container
(фиксирана ширина) или .container-fluid
(пълна ширина) за правилно подравняване и подплата..row
и .col-xs-4
са достъпни за бързо създаване на оформления на мрежата. По-малко миксини също могат да се използват за повече семантични оформления.padding
. Тази подложка е изместена в редове за първата и последната колона чрез отрицателен марж на .row
s..col-xs-4
..col-md-*
клас към елемент не само ще повлияе на неговия стил на средни устройства, но и на големи устройства, ако .col-lg-*
класът не присъства.Вижте примерите за прилагане на тези принципи към вашия код.
Ние използваме следните медийни заявки в нашите Less файлове, за да създадем ключовите точки на прекъсване в нашата мрежова система.
Понякога разширяваме тези медийни заявки, за да включим max-width
за ограничаване на CSS до по-тесен набор от устройства.
Вижте как аспектите на мрежовата система Bootstrap работят на множество устройства с удобна таблица.
Изключително малки устройства Телефони (<768px) | Малки устройства Таблети (≥768px) | Средни устройства Настолни компютри (≥992px) | Големи устройства Настолни компютри (≥1200px) | |
---|---|---|---|---|
Поведение на мрежата | Хоризонтално през цялото време | Свито за начало, хоризонтално над точките на прекъсване | ||
Ширина на контейнера | Няма (автоматично) | 750 пиксела | 970 пиксела | 1170 пиксела |
Префикс на класа | .col-xs- |
.col-sm- |
.col-md- |
.col-lg- |
# колони | 12 | |||
Ширина на колоната | Автоматичен | ~62px | ~81px | ~97px |
Ширина на улука | 30px (15px от всяка страна на колона) | |||
Нестабилен | да | |||
Компенсации | да | |||
Подреждане на колони | да |
Използвайки единичен набор от .col-md-*
класове на мрежата, можете да създадете основна система на мрежата, която започва да е подредена на мобилни устройства и таблетни устройства (допълнително малък до малък диапазон), преди да стане хоризонтална на настолни (средни) устройства. Поставете колони от мрежа във всеки .row
.
Превърнете всяко оформление на мрежата с фиксирана ширина в оформление с пълна ширина, като промените най-външния си .container
на .container-fluid
.
Не искате вашите колони просто да се подреждат в по-малки устройства? Използвайте допълнителните класове на мрежата за малки и средни устройства, като добавите .col-xs-*
.col-md-*
към вашите колони. Вижте примера по-долу за по-добра представа как работи всичко.
Надградете предишния пример, като създадете още по-динамични и мощни оформления с .col-sm-*
класове за таблети.
Ако повече от 12 колони са поставени в рамките на един ред, всяка група от допълнителни колони, като една единица, ще се пренесе на нов ред.
С наличните четири нива на мрежи със сигурност ще се натъкнете на проблеми, при които в определени точки на прекъсване вашите колони не се изчистват съвсем правилно, тъй като едната е по-висока от другата. За да коригирате това, използвайте комбинация от a .clearfix
и нашите отзивчиви полезни класове .
В допълнение към изчистването на колони при реагиращи точки на прекъсване, може да се наложи да нулирате отмествания, натискания или издърпвания . Вижте това в действие в примера на мрежата .
Преместете колони надясно с помощта на .col-md-offset-*
класове. Тези класове увеличават лявото поле на колона по *
колона. Например, .col-md-offset-4
преминава .col-md-4
през четири колони.
Можете също така да замените отместванията от по-ниските нива на мрежата с .col-*-offset-0
класове.
За да вложите съдържанието си в мрежата по подразбиране, добавете нова .row
и набор от .col-sm-*
колони в съществуваща .col-sm-*
колона. Вложените редове трябва да включват набор от колони, които се събират до 12 или по-малко (не е задължително да използвате всичките 12 налични колони).
Променете лесно реда на нашите вградени колони с мрежа с .col-md-push-*
модификаторни .col-md-pull-*
класове.
В допълнение към предварително изградените класове на мрежата за бързи оформления, Bootstrap включва Less променливи и миксини за бързо генериране на ваши собствени прости, семантични оформления.
Променливите определят броя на колоните, ширината на улука и точката на медийна заявка, от която да започнат плаващите колони. Използваме ги, за да генерираме предварително дефинираните класове на мрежата, документирани по-горе, както и за персонализираните миксини, изброени по-долу.
Миксините се използват във връзка с променливите на мрежата за генериране на семантичен CSS за отделни колони на мрежата.
Можете да модифицирате променливите към свои собствени персонализирани стойности или просто да използвате миксините с техните стойности по подразбиране. Ето пример за използване на настройките по подразбиране за създаване на оформление с две колони с празнина между тях.
Всички HTML заглавия, <h1>
до <h6>
, са налични. .h1
също са налични класове чрез .h6
, когато искате да съответствате на стила на шрифта на заглавие, но все пак искате текстът ви да се показва в ред.
h1. Заглавие на Bootstrap |
Получерно 36px |
h2. Заглавие на Bootstrap |
Получерно 30px |
h3. Заглавие на Bootstrap |
Получерно 24px |
h4. Заглавие на Bootstrap |
Получерно 18px |
h5. Заглавие на Bootstrap |
Получерно 14px |
h6. Заглавие на Bootstrap |
Получерно 12px |
Създайте по-лек, вторичен текст във всяко заглавие с общ <small>
етикет или .small
класа.
h1. Bootstrap заглавие Вторичен текст |
h2. Bootstrap заглавие Вторичен текст |
h3. Bootstrap заглавие Вторичен текст |
h4. Bootstrap заглавие Вторичен текст |
h5. Bootstrap заглавие Вторичен текст |
h6. Bootstrap заглавие Вторичен текст |
Глобалната стойност по подразбиране на Bootstrap е font-size
14px , с 1,428 . Това се прилага към и всички параграфи. Освен това (параграфи) получават долно поле от половината от тяхната изчислена височина на реда (10px по подразбиране).line-height
<body>
<p>
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.
Меценат 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.
Изпъкнете абзац, като добавите .lead
.
Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus.
Типографската скала се основава на две Less променливи във variables.less : @font-size-base
и @line-height-base
. Първият е основният размер на шрифта, използван навсякъде, а вторият е основната височина на реда. Ние използваме тези променливи и някои прости математически изчисления, за да създадем полетата, подложките и височините на редовете на всички наши типове и други. Персонализирайте ги и Bootstrap се адаптира.
За подчертаване на набор от текст поради неговата уместност в друг контекст, използвайте <mark>
етикета.
Можете да използвате маркера mark заподчертайтетекст.
За посочване на блокове от текст, които са били изтрити, използвайте <del>
етикета.
Този ред от текст е предназначен да се третира като изтрит текст.
За посочване на блокове от текст, които вече не са подходящи, използвайте <s>
етикета.
Този ред от текст трябва да се третира като вече неточен.
За обозначаване на допълнения към документа използвайте <ins>
етикета.
Този ред от текст е предназначен да се третира като допълнение към документа.
За подчертаване на текст използвайте <u>
тага.
Този ред от текст ще се визуализира като подчертан
Използвайте етикетите за подчертаване по подразбиране на HTML с леки стилове.
За премахване на подчертаването на вграден текст или блокове от текст, използвайте <small>
етикета, за да зададете текст на 85% от размера на родителя. Заглавните елементи получават свои собствени font-size
за вложени <small>
елементи.
Можете алтернативно да използвате вграден елемент с .small
вместо any <small>
.
Този ред от текст е предназначен да се третира като дребен шрифт.
За подчертаване на фрагмент от текст с по-голямо тегло на шрифта.
Следният фрагмент от текст се изобразява като удебелен текст .
За подчертаване на фрагмент от текст с курсив.
Следният фрагмент от текст се изобразява като текст в курсив .
Чувствайте се свободни да използвате <b>
и <i>
в HTML5. <b>
има за цел да подчертава думи или фрази, без да придава допълнителна важност, докато <i>
е предимно за глас, технически термини и т.н.
Лесно подравнявайте текст към компоненти с класове за подравняване на текст.
Ляво подравнен текст.
Централно подравнен текст.
Дясно подравнен текст.
Подравнен текст.
Без пренасяне на текст.
Трансформирайте текст в компоненти с класове за изписване на главни букви.
Текст с малки букви.
Текст с главни букви.
Текст с главни букви.
Стилизирано внедряване на HTML <abbr>
елемент за съкращения и акроними за показване на разширената версия при задържане на мишката. Съкращенията с title
атрибут имат светла пунктирана долна граница и помощен курсор при задържане, предоставяйки допълнителен контекст при задържане и за потребителите на помощни технологии.
Съкращение на думата атрибут е attr .
Добавете .initialism
към съкращение за малко по-малък размер на шрифта.
HTML е най-доброто нещо след нарязания хляб.
Представете информация за контакт с най-близкия предшественик или цялата работа. Запазете форматирането, като завършите всички редове с <br>
.
За цитиране на блокове от съдържание от друг източник във вашия документ.
Обвийте <blockquote>
всеки HTML като цитат. За директни котировки препоръчваме <p>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Цяло число posuere erat a ante.
Промени в стила и съдържанието за прости вариации на стандарт <blockquote>
.
Добавете <footer>
за идентифициране на източника. Увийте името на изходната работа в <cite>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Цяло число posuere erat a ante.
Добавете .blockquote-reverse
за цитат с дясно подравнено съдържание.
Списък с елементи, в които редът няма изрично значение.
Списък с елементи, в които редът има изрично значение.
Премахнете полето по подразбиране list-style
и лявото поле на елементите от списъка (само непосредствени деца). Това се отнася само за непосредствени дъщерни елементи от списъци , което означава, че ще трябва да добавите класа и за всички вложени списъци.
Поставете всички елементи от списъка на един ред с display: inline-block;
лека подложка.
Списък с термини със свързаните с тях описания.
Подредете термини и описания <dl>
един до друг. Започва подредено като <dl>
s по подразбиране, но когато навигационната лента се разшири, това се прави и с тези.
Списъците с хоризонтални описания ще съкратят термините, които са твърде дълги, за да се поберат в лявата колона с text-overflow
. В по-тесни прозорци те ще се променят на подреденото оформление по подразбиране.
Обвийте вградени фрагменти от код с <code>
.
<section>
трябва да се обвие като вграден.
Използвайте , за <kbd>
да посочите въвеждане, което обикновено се въвежда от клавиатурата.
Използвайте <pre>
за няколко реда код. Не забравяйте да избегнете всички ъглови скоби в кода за правилно изобразяване.
<p>Примерен текст тук...</p>
По желание можете да добавите .pre-scrollable
класа, който ще зададе максимална височина от 350px и ще предостави лента за превъртане по оста y.
За посочване на променливи използвайте <var>
етикета.
y = m x + b
За посочване на блокове примерен изход от програма използвайте <samp>
етикета.
Този текст е предназначен да се третира като примерен резултат от компютърна програма.
За основен стил—лека подложка и само хоризонтални разделители—добавете основния клас .table
към всеки <table>
. Може да изглежда супер излишно, но като се има предвид широкото използване на таблици за други добавки като календари и инструменти за избор на дата, ние избрахме да изолираме нашите персонализирани стилове на таблици.
# | Първо име | Фамилия | Потребителско име |
---|---|---|---|
1 | Марк | Ото | @mdo |
2 | Джейкъб | Торнтън | @дебел |
3 | Лари | птицата | @туитър |
Използвайте .table-striped
, за да добавите зебра към всеки ред на таблица в рамките на <tbody>
.
Раираните таблици се стилизират чрез :nth-child
CSS селектора, който не е наличен в Internet Explorer 8.
# | Първо име | Фамилия | Потребителско име |
---|---|---|---|
1 | Марк | Ото | @mdo |
2 | Джейкъб | Торнтън | @дебел |
3 | Лари | птицата | @туитър |
Добавете .table-bordered
за граници от всички страни на таблицата и клетките.
# | Първо име | Фамилия | Потребителско име |
---|---|---|---|
1 | Марк | Ото | @mdo |
2 | Джейкъб | Торнтън | @дебел |
3 | Лари | птицата | @туитър |
Добавете .table-hover
, за да активирате състояние на задържане върху редове на таблица в рамките на <tbody>
.
# | Първо име | Фамилия | Потребителско име |
---|---|---|---|
1 | Марк | Ото | @mdo |
2 | Джейкъб | Торнтън | @дебел |
3 | Лари | птицата | @туитър |
Добавете .table-condensed
, за да направите таблиците по-компактни, като намалите наполовина подложката на клетката.
# | Първо име | Фамилия | Потребителско име |
---|---|---|---|
1 | Марк | Ото | @mdo |
2 | Джейкъб | Торнтън | @дебел |
3 | Птицата Лари | @туитър |
Използвайте контекстуални класове, за да оцветите редове на таблица или отделни клетки.
Клас | Описание |
---|---|
.active |
Прилага цвета на курсора върху определен ред или клетка |
.success |
Показва успешно или положително действие |
.info |
Показва неутрална информативна промяна или действие |
.warning |
Показва предупреждение, което може да изисква внимание |
.danger |
Показва опасно или потенциално негативно действие |
# | Заглавие на колона | Заглавие на колона | Заглавие на колона |
---|---|---|---|
1 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
2 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
3 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
4 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
5 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
6 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
7 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
8 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
9 | Съдържание на колона | Съдържание на колона | Съдържание на колона |
Използването на цвят за добавяне на значение към ред на таблица или отделна клетка осигурява само визуална индикация, която няма да бъде предадена на потребителите на помощни технологии – като екранни четци. Уверете се, че информацията, обозначена с цвета, е или очевидна от самото съдържание (видимия текст в съответния ред/клетка на таблицата), или е включена чрез алтернативни средства, като например допълнителен текст, скрит с .sr-only
класа.
Създайте адаптивни таблици, като обвиете всяка .table
, .table-responsive
за да ги накарате да се превъртат хоризонтално на малки устройства (под 768px). Когато гледате на нещо, по-голямо от 768px, няма да видите разлика в тези таблици.
Отзивчивите маси използват overflow-y: hidden
, който изрязва всяко съдържание, което надхвърля долния или горния ръб на таблицата. По-специално, това може да отреже падащите менюта и други уиджети на трети страни.
Firefox има някакъв неудобен стил на набор от полета, width
който пречи на отзивчивата таблица. Това не може да бъде отменено без специфичен за Firefox хак, който не предоставяме в Bootstrap:
За повече информация прочетете този отговор на Stack Overflow .
# | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата |
---|---|---|---|---|---|---|
1 | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка |
2 | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка |
3 | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка |
# | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата | Заглавие на таблицата |
---|---|---|---|---|---|---|
1 | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка |
2 | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка |
3 | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка | Таблица клетка |
Индивидуалните контроли на формуляра автоматично получават някакъв глобален стил. Всички текстови <input>
, <textarea>
и <select>
елементи с .form-control
са зададени width: 100%;
по подразбиране. Увийте етикетите и контролите .form-group
за оптимално разстояние.
Не смесвайте групи формуляри директно с групи за въвеждане . Вместо това вложете групата за въвеждане вътре в групата на формуляра.
Добавете .form-inline
към вашия формуляр (който не трябва да бъде <form>
) за ляво подравнени и вградени блокови контроли. Това се отнася само за формуляри в прозорци за изглед, които са с ширина най-малко 768px.
Входовете и изборите са width: 100%;
приложени по подразбиране в Bootstrap. В рамките на вградени формуляри ние нулираме това, width: auto;
така че множество контроли да могат да се намират на един и същи ред. В зависимост от вашето оформление може да са необходими допълнителни персонализирани ширини.
Екранните четци ще имат проблеми с вашите формуляри, ако не включите етикет за всеки вход. За тези вградени формуляри можете да скриете етикетите с помощта на .sr-only
класа. Има допълнителни алтернативни методи за предоставяне на етикет за помощни технологии, като aria-label
атрибута или aria-labelledby
. title
Ако нито един от тях не присъства, екранните четци могат да прибягнат до използването на placeholder
атрибута, ако има такъв, но имайте предвид, че placeholder
не се препоръчва използването на като заместител на други методи за етикетиране.
Използвайте предварително дефинираните мрежови класове на Bootstrap, за да подравните етикети и групи от контроли на формуляри в хоризонтално оформление чрез добавяне .form-horizontal
към формуляра (което не е задължително да бъде <form>
). Това променя .form-group
s да се държи като редове от мрежата, така че няма нужда от .row
.
Примери за стандартни контроли на формуляр, поддържани в примерно оформление на формуляр.
Най-често срещаният контролен формуляр, текстови полета за въвеждане. Включва поддръжка за всички типове HTML5: text
, password
, datetime
, datetime-local
, date
, month
, time
, week
, number
, email
, url
, search
, tel
, и color
.
Входящите данни ще бъдат напълно стилизирани само ако type
са правилно декларирани.
За да добавите интегриран текст или бутони преди и/или след който и да е текстово базиран <input>
, проверете компонента на групата за въвеждане .
Контрол на формуляр, който поддържа няколко реда текст. Променете rows
атрибута, ако е необходимо.
Квадратчетата за отметка са за избиране на една или няколко опции в списък, докато радиостанциите са за избиране на една опция от много.
Поддържат се деактивирани квадратчета за отметка и радиостанции, но за да осигурите „неразрешен“ курсор при задържане на родителя <label>
, ще трябва да добавите .disabled
класа към родителя .radio
, .radio-inline
, .checkbox
или .checkbox-inline
.
Използвайте .checkbox-inline
или .radio-inline
класовете на серия от квадратчета за отметка или радиостанции за контроли, които се появяват на същия ред.
Ако нямате текст в <label>
, входът се позиционира както очаквате. Понастоящем работи само на невградени квадратчета за отметка и радиостанции. Не забравяйте да предоставите някаква форма на етикет за помощни технологии (например използване на aria-label
).
Обърнете внимание, че много естествени менюта за избор – а именно в Safari и Chrome – имат заоблени ъгли, които не могат да се променят чрез border-radius
свойства.
За <select>
контроли с multiple
атрибута по подразбиране се показват множество опции.
Когато трябва да поставите обикновен текст до етикет на формуляр във формуляр, използвайте .form-control-static
класа на <p>
.
Ние премахваме outline
стиловете по подразбиране на някои контроли на формуляри и прилагаме box-shadow
вместо тях за :focus
.
:focus
състояниеГорният примерен вход използва персонализирани стилове в нашата документация, за да демонстрира :focus
състоянието на .form-control
.
Добавете disabled
булевия атрибут към вход, за да предотвратите потребителски взаимодействия. Деактивираните входове изглеждат по-светли и добавят not-allowed
курсор.
Добавете disabled
атрибута към a, <fieldset>
за да деактивирате всички контроли в рамките <fieldset>
наведнъж.
<a>
По подразбиране браузърите ще третират всички собствени контроли на формуляри ( <input>
, <select>
и <button>
елементи) вътре <fieldset disabled>
като дезактивирани, предотвратявайки взаимодействието както с клавиатура, така и с мишка върху тях. Ако обаче вашият формуляр включва и <a ... class="btn btn-*">
елементи, на тях ще бъде даден само стил на pointer-events: none
. Както е отбелязано в раздела за забранено състояние за бутони (и по-специално в подраздела за анкерни елементи), това свойство на CSS все още не е стандартизирано и не се поддържа напълно в Opera 18 и по-долу или в Internet Explorer 11 и спечели не пречи на потребителите на клавиатурата да могат да фокусират или активират тези връзки. Така че, за да сте в безопасност, използвайте персонализиран JavaScript, за да деактивирате такива връзки.
Въпреки че Bootstrap ще приложи тези стилове във всички браузъри, Internet Explorer 11 и по-стари не поддържат напълно disabled
атрибута на <fieldset>
. Използвайте персонализиран JavaScript, за да деактивирате набора от полета в тези браузъри.
Добавете readonly
булевия атрибут към вход, за да предотвратите промяна на стойността на входа. Входовете само за четене изглеждат по-леки (точно като деактивираните входове), но запазват стандартния курсор.
Помощен текст на ниво блок за контроли на формуляр.
Помощният текст трябва да бъде изрично свързан с контролата на формуляра, към която се отнася с помощта наaria-describedby
атрибута. Това ще гарантира, че помощните технологии – като екранни четци – ще обявят този помощен текст, когато потребителят фокусира или влезе в контрола.
Bootstrap включва стилове за валидиране за състояния на грешка, предупреждение и успех на контролите на формуляра. За да използвате, добавете .has-warning
, .has-error
или .has-success
към родителския елемент. Всякакви .control-label
, .form-control
, и.help-block
в този елемент ще получи стиловете за валидиране.
Използването на тези стилове за валидиране за обозначаване на състоянието на контрола на формуляр осигурява само визуална, базирана на цвят индикация, която няма да бъде предадена на потребители на помощни технологии – като екранни четци – или на потребители с далтонисти.
Уверете се, че е предоставена и алтернативна индикация за състояние. Например, можете да включите намек за състояние в самия <label>
текст на контролата на формуляра (както е случаят в следния пример за код), да включите Glyphicon (с подходящ алтернативен текст, използвайки .sr-only
класа - вижте примерите за Glyphicon ) или като предоставите допълнителен текстов блок за помощ. Специално за помощните технологии, на невалидните контроли на формуляри също може да бъде присвоен aria-invalid="true"
атрибут.
Можете също да добавите незадължителни икони за обратна връзка с добавяне на .has-feedback
и дясната икона.
Иконите за обратна връзка работят само с текстови <input class="form-control">
елементи.
Ръчното позициониране на иконите за обратна връзка е необходимо за входове без етикет и за входни групи с добавка отдясно. Силно се препоръчва да предоставяте етикети за всички входове от съображения за достъпност. Ако искате да предотвратите показването на етикети, скрийте ги с .sr-only
класа. Ако трябва да правите без етикети, коригирайте top
стойността на иконата за обратна връзка. За входни групи коригирайте right
стойността до подходяща стойност на пиксела в зависимост от ширината на вашата добавка.
За да се гарантира, че помощните технологии – като екранни четци – предават правилно значението на икона, допълнителен скрит текст трябва да бъде включен в .sr-only
класа и изрично свързан с контрола на формуляра, към който се отнася, използвайки aria-describedby
. Като алтернатива се уверете, че значението (например фактът, че има предупреждение за конкретно поле за въвеждане на текст) е предадено в друга форма, като например промяна на текста на действителното <label>
, свързано с контролата на формуляра.
Въпреки че следващите примери вече споменават състоянието на валидиране на съответните им контроли на формуляра в самия <label>
текст, горната техника (с използване на .sr-only
текст и aria-describedby
) е включена с илюстративна цел.
.sr-only
етикетиАко използвате .sr-only
класа, за да скриете контрола на формуляр <label>
(вместо да използвате други опции за етикетиране, като aria-label
атрибута), Bootstrap автоматично ще коригира позицията на иконата, след като бъде добавена.
Задайте височини, като използвате класове като .input-lg
, и задайте ширини, като използвате класове на колони от мрежа като .col-lg-*
.
Създавайте по-високи или по-къси контроли за формуляри, които съответстват на размерите на бутоните.
Бързо оразмерявайте етикети и контроли на формуляри .form-horizontal
чрез добавяне .form-group-lg
или .form-group-sm
.
Увийте входовете в колони на мрежата или всеки персонализиран родителски елемент, за да наложите лесно желаните ширини.
Използвайте класовете бутони на <a>
, <button>
или <input>
елемент.
Докато класовете бутони могат да се използват върху <a>
и <button>
елементи, само <button>
елементи се поддържат в рамките на нашите навигационни и навигационни компоненти.
Ако <a>
елементите се използват да действат като бутони – задействащи функционалност в страницата, вместо да навигират до друг документ или раздел в текущата страница – те също трябва да получат подходящо role="button"
.
Като най-добра практика силно препоръчваме да използвате <button>
елемента, когато е възможно , за да осигурите съвпадащо рендиране в различни браузъри.
Наред с други неща, има грешка във Firefox <30 , която ни пречи да зададем базираните line-height
на <input>
-бутони, което ги кара да не съвпадат точно с височината на другите бутони във Firefox.
Използвайте всеки от наличните класове бутони, за да създадете бързо стилизиран бутон.
Използването на цвят за добавяне на значение към бутон осигурява само визуална индикация, която няма да бъде предадена на потребителите на помощни технологии – като екранни четци. Уверете се, че информацията, обозначена с цвета, е или очевидна от самото съдържание (видимия текст на бутона), или е включена чрез алтернативни средства, като например допълнителен текст, скрит с .sr-only
класа.
Искате ли по-големи или по-малки копчета? Добавете .btn-lg
, .btn-sm
или .btn-xs
за допълнителни размери.
Създайте бутони на ниво блок – тези, които обхващат цялата ширина на родител – като добавите .btn-block
.
Бутоните ще изглеждат натиснати (с по-тъмен фон, по-тъмна рамка и вмъкната сянка), когато са активни. За <button>
елементи това става чрез :active
. За <a>
елементи това се прави с .active
. Можете обаче да използвате .active
on <button>
s (и да включите aria-pressed="true"
атрибута), ако трябва да репликирате активното състояние програмно.
Няма нужда да добавяте :active
, тъй като това е псевдо-клас, но ако трябва да принудите същия външен вид, продължете и добавете .active
.
Добавете .active
класа към <a>
бутоните.
Направете бутоните да изглеждат невъзможни за натискане, като ги избледнеете обратно с opacity
.
Добавете disabled
атрибута към <button>
бутоните.
Ако добавите disabled
атрибута към <button>
, Internet Explorer 9 и по-долу ще направи текста сив с неприятна текстова сянка, която не можем да коригираме.
Добавете .disabled
класа към <a>
бутоните.
Ние използваме .disabled
като полезен клас тук, подобно на общия .active
клас, така че не се изисква префикс.
Този клас използва pointer-events: none
, за да се опита да деактивира функционалността на връзката на <a>
s, но това CSS свойство все още не е стандартизирано и не се поддържа напълно в Opera 18 и по-нови или в Internet Explorer 11. В допълнение, дори в браузъри, които поддържат pointer-events: none
, клавиатурата навигацията остава незасегната, което означава, че зрящи потребители на клавиатура и потребители на помощни технологии все още ще могат да активират тези връзки. Така че, за да сте в безопасност, използвайте персонализиран JavaScript, за да деактивирате такива връзки.
Изображенията в Bootstrap 3 могат да бъдат направени удобни за реагиране чрез добавяне на .img-responsive
класа. Това се отнася max-width: 100%;
и height: auto;
за display: block;
изображението, така че да се мащабира добре спрямо родителския елемент.
За центриране на изображения, които използват .img-responsive
класа, използвайте .center-block
вместо .text-center
. Вижте раздела за помощни класове за повече подробности относно .center-block
използването.
В Internet Explorer 8-10 SVG изображенията .img-responsive
са с непропорционален размер. За да коригирате това, добавете, width: 100% \9;
където е необходимо. Bootstrap не прилага това автоматично, тъй като причинява усложнения на други формати на изображения.
Добавете класове към <img>
елемент, за да стилизирате лесно изображения във всеки проект.
Имайте предвид, че в Internet Explorer 8 липсва поддръжка за заоблени ъгли.
Предайте значение чрез цвят с шепа акцентиращи полезни класове. Те могат да бъдат приложени и към връзки и ще потъмнеят при задържане на курсора на мишката точно като нашите стилове за връзки по подразбиране.
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.
Меценат sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem malesuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
Понякога класовете за подчертаване не могат да бъдат приложени поради спецификата на друг селектор. В повечето случаи достатъчно заобиколно решение е да обвиете текста си в a <span>
с класа.
Използването на цвят за добавяне на смисъл осигурява само визуална индикация, която няма да бъде предадена на потребителите на помощни технологии – като екранни четци. Уверете се, че информацията, обозначена с цвета, е или очевидна от самото съдържание (контекстуалните цветове се използват само за подсилване на значението, което вече присъства в текста/маркирането), или е включена чрез алтернативни средства, като например допълнителен текст, скрит с .sr-only
класа .
Подобно на контекстните класове за цвят на текст, лесно задайте фона на елемент на всеки контекстуален клас. Компонентите на котвата ще потъмнеят при задържане, точно както текстовите класове.
Nullam id dolor id nibh ultricies vehicula ut id elit.
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
Меценат sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem malesuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
Понякога контекстуалните фонови класове не могат да бъдат приложени поради спецификата на друг селектор. В някои случаи достатъчно заобиколно решение е да обвиете съдържанието на вашия елемент в a <div>
с класа.
Както при контекстуалните цветове , уверете се, че всяко значение, предадено чрез цвят, също е предадено във формат, който не е чисто презентационен.
Използвайте общата икона за затваряне, за да отхвърлите съдържание като модални и сигнали.
Използвайте карета, за да посочите функционалността и посоката на падащото меню. Имайте предвид, че каретката по подразбиране ще се обърне автоматично в падащите менюта .
Плаване на елемент наляво или надясно с клас. !important
е включен, за да се избегнат проблеми със специфичността. Класовете могат да се използват и като миксини.
Задайте елемент на display: block
и центрирайте чрез margin
. Предлага се като миксин и клас.
Лесно изчистете float
s чрез добавяне .clearfix
към родителския елемент . Използва micro clearfix , популяризиран от Nicolas Gallagher. Може да се използва и като миксин.
Принудително показване или скриване на елемент ( включително за екранни четци ) с помощта на .show
и .hidden
класове. Тези класове се използват !important
за избягване на конфликти на специфичност, точно като бързите плаващи елементи . Те са достъпни само за превключване на ниво блок. Могат да се използват и като миксини.
.hide
е наличен, но не винаги засяга екранните четци и е отхвърлен от v3.0.1. Използвайте .hidden
или .sr-only
вместо.
Освен това .invisible
може да се използва за превключване само на видимостта на елемент, което означава, че display
той не е модифициран и елементът все още може да повлияе на потока на документа.
Скрийте елемент за всички устройства с изключение на екранни четци с .sr-only
. Комбинирайте .sr-only
с .sr-only-focusable
, за да покажете елемента отново, когато е фокусиран (напр. от потребител само с клавиатура). Необходимо за спазване на най-добрите практики за достъпност . Може да се използва и като миксини.
Използвайте .text-hide
класа или mixin, за да замените текстовото съдържание на елемент с фоново изображение.
За по-бързо разработка, удобна за мобилни устройства, използвайте тези помощни класове за показване и скриване на съдържание по устройство чрез медийна заявка. Включени са и полезни класове за превключване на съдържание при отпечатване.
Опитайте се да ги използвате ограничено и избягвайте да създавате напълно различни версии на един и същи сайт. Вместо това ги използвайте, за да допълните представянето на всяко устройство.
Използвайте един или комбинация от наличните класове за превключване на съдържание между точките на прекъсване на прозорците.
Изключително малки устройстваТелефони (<768px) | Малки устройстваТаблети (≥768px) | Средни устройстваНастолни компютри (≥992px) | Големи устройстваНастолни компютри (≥1200px) | |
---|---|---|---|---|
.visible-xs-* |
Видими | Скрити | Скрити | Скрити |
.visible-sm-* |
Скрити | Видими | Скрити | Скрити |
.visible-md-* |
Скрити | Скрити | Видими | Скрити |
.visible-lg-* |
Скрити | Скрити | Скрити | Видими |
.hidden-xs |
Скрити | Видими | Видими | Видими |
.hidden-sm |
Видими | Скрити | Видими | Видими |
.hidden-md |
Видими | Видими | Скрити | Видими |
.hidden-lg |
Видими | Видими | Видими | Скрити |
От v3.2.0, .visible-*-*
класовете за всяка точка на прекъсване се предлагат в три варианта, по един за всяка display
стойност на CSS свойство, изброено по-долу.
Група от класове | CSSdisplay |
---|---|
.visible-*-block |
display: block; |
.visible-*-inline |
display: inline; |
.visible-*-inline-block |
display: inline-block; |
Така че, например за много малки ( xs
) екрани, наличните .visible-*-*
класове са: .visible-xs-block
, .visible-xs-inline
и .visible-xs-inline-block
.
Класовете .visible-xs
, .visible-sm
, .visible-md
и .visible-lg
също съществуват, но са отхвърлени от v3.2.0 . Те са приблизително еквивалентни на .visible-*-block
, с изключение на допълнителни специални случаи за <table>
елементи, свързани с превключване.
Подобно на обикновените адаптивни класове, използвайте ги за превключване на съдържание за печат.
Класове | Браузър | Печат |
---|---|---|
.visible-print-block .visible-print-inline .visible-print-inline-block |
Скрити | Видими |
.hidden-print |
Видими | Скрити |
Класът .visible-print
също съществува, но е отхвърлен от v3.2.0. Той е приблизително еквивалентен на .visible-print-block
, с изключение на допълнителни специални случаи за <table>
-свързани елементи.
Преоразмерете браузъра си или заредете на различни устройства, за да тествате отзивчивите помощни класове.
Зелените отметки показват, че елементът е видим във вашия текущи прозорец.
Тук зелените отметки също показват, че елементът е скрит в текущия ви прозорец.
CSS на Bootstrap е изграден върху Less, препроцесор с допълнителна функционалност като променливи, миксини и функции за компилиране на CSS. Тези, които искат да използват изходните Less файлове вместо нашите компилирани CSS файлове, могат да се възползват от многобройните променливи и миксини, които използваме в цялата рамка.
Грид променливите и миксините са обхванати в раздела Грид система .
Bootstrap може да се използва поне по два начина: с компилиран CSS или с изходните Less файлове. За да компилирате файловете Less, консултирайте се с раздела Първи стъпки за това как да настроите вашата среда за разработка, за да изпълнява необходимите команди.
Инструментите за компилиране на трети страни може да работят с Bootstrap, но не се поддържат от нашия основен екип.
Променливите се използват в целия проект като начин за централизиране и споделяне на често използвани стойности като цветове, интервали или купчини шрифтове. За пълна разбивка, моля, вижте Персонализатора .
Използвайте лесно две цветови схеми: сива скала и семантична. Цветовете в сивата скала осигуряват бърз достъп до често използвани нюанси на черното, докато семантичните включват различни цветове, присвоени на значими контекстуални стойности.
Използвайте която и да е от тези цветови променливи такива, каквито са, или ги пренасочете към по-значими променливи за вашия проект.
Няколко променливи за бързо персонализиране на ключови елементи от скелета на вашия сайт.
Лесно стилизирайте връзките си с правилния цвят само с една стойност.
Имайте предвид, че @link-hover-color
използва функция, друг страхотен инструмент от Less, за автоматично създаване на правилния цвят на курсора. Можете да използвате darken
, lighten
, saturate
и desaturate
.
Лесно задайте вашия шрифт, размер на текста, водещи букви и други с няколко бързи променливи. Bootstrap ги използва и за осигуряване на лесни типографски миксини.
Две бързи променливи за персонализиране на местоположението и името на файла на вашите икони.
Компонентите в Bootstrap използват някои променливи по подразбиране за задаване на общи стойности. Ето най-често използваните.
Миксините на доставчици са миксини, които подпомагат поддръжката на множество браузъри чрез включване на всички съответни префикси на доставчици във вашия компилиран CSS.
Нулирайте модела на кутията на вашите компоненти с един миксин. За контекст вижте тази полезна статия от Mozilla .
Миксинът е отхвърлен от v3.2.0, с въвеждането на Autoprefixer. За да запази обратната съвместимост, Bootstrap ще продължи да използва mixin вътрешно до Bootstrap v4.
Днес всички съвременни браузъри поддържат свойството без префикс border-radius
. Като такъв, няма .border-radius()
mixin, но Bootstrap включва преки пътища за бързо заобляне на два ъгъла от определена страна на обект.
Ако вашата целева аудитория използва най-новите и най-добрите браузъри и устройства, уверете се, че просто използвате box-shadow
собствеността самостоятелно. Ако имате нужда от поддръжка за по-стари устройства с Android (преди v4) и iOS (преди iOS 5), използвайте остарелия mixin, за да изберете необходимия -webkit
префикс.
Mixin е отхвърлен от v3.1.0, тъй като Bootstrap не поддържа официално остарелите платформи, които не поддържат стандартното свойство. За да запази обратната съвместимост, Bootstrap ще продължи да използва mixin вътрешно до Bootstrap v4.
Не забравяйте да използвате rgba()
цветове в сенките на кутията, така че да се слеят възможно най-безпроблемно с фона.
Множество миксини за гъвкавост. Задайте цялата информация за прехода с едно или посочете отделно забавяне и продължителност, ако е необходимо.
Миксините са отхвърлени от v3.2.0, с въвеждането на Autoprefixer. За да запази обратната съвместимост, Bootstrap ще продължи да използва миксините вътрешно до Bootstrap v4.
Завъртете, мащабирайте, преместете (преместете) или изкривете всеки обект.
Миксините са отхвърлени от v3.2.0, с въвеждането на Autoprefixer. За да запази обратната съвместимост, Bootstrap ще продължи да използва миксините вътрешно до Bootstrap v4.
Един миксин за използване на всички анимационни свойства на CSS3 в една декларация и други миксини за отделни свойства.
Миксините са отхвърлени от v3.2.0, с въвеждането на Autoprefixer. За да запази обратната съвместимост, Bootstrap ще продължи да използва миксините вътрешно до Bootstrap v4.
Задайте непрозрачността за всички браузъри и осигурете filter
резервен вариант за IE8.
Осигурете контекст за контролите на формуляра във всяко поле.
Генерирайте колони чрез CSS в рамките на един елемент.
Превърнете лесно всеки два цвята във фонов градиент. Станете по-напреднали и задайте посока, използвайте три цвята или използвайте радиален градиент. С един миксин получавате всички префиксни синтаксиси, от които се нуждаете.
Можете също така да посочите ъгъла на стандартен двуцветен линеен градиент:
Ако имате нужда от градиент в стил на бръснарско райе, това също е лесно. Просто посочете един цвят и ние ще наслагваме полупрозрачна бяла ивица.
Увеличете анте и вместо това използвайте три цвята. Задайте първия цвят, втория цвят, спирането на цвета на втория цвят (процентна стойност като 25%) и третия цвят с тези миксини:
Горе главата! Ако някога се наложи да премахнете градиент, не забравяйте да премахнете всеки специфичен за IE, filter
който може да сте добавили. Можете да направите това, като използвате .reset-filter()
mixin заедно с background-image: none;
.
Помощните миксини са миксини, които комбинират иначе несвързани CSS свойства за постигане на конкретна цел или задача.
Забравете добавянето class="clearfix"
към всеки елемент и вместо това добавете .clearfix()
mixin, където е подходящо. Използва micro clearfix от Nicolas Gallagher .
Бързо центрирайте всеки елемент в неговия родител. Изисква width
или max-width
да се настрои.
Посочете по-лесно размерите на даден обект.
Конфигурирайте лесно опциите за преоразмеряване за всяко текстово поле или всеки друг елемент. По подразбиране е нормално поведение на браузъра ( both
).
Лесно съкращавайте текст с многоточие с един миксин. Изисква елемент да бъде block
или inline-block
ниво.
Посочете два пътя на изображението и @1x размерите на изображението и Bootstrap ще предостави @2x медийна заявка. Ако имате много изображения за обслужване, помислете дали да не напишете ръчно CSS на вашето изображение на ретината в една медийна заявка.
Докато Bootstrap е изграден на Less, той също има официален Sass порт . Ние го поддържаме в отделно хранилище на GitHub и обработваме актуализациите със скрипт за преобразуване.
Тъй като портът на Sass има отделно репо и обслужва малко по-различна аудитория, съдържанието на проекта се различава значително от основния проект на Bootstrap. Това гарантира, че Sass портът е възможно най-съвместим с възможно най-много базирани на Sass системи.
Пътека | Описание |
---|---|
lib/ |
Ruby gem код (конфигурация на Sass, интеграции на Rails и Compass) |
tasks/ |
Скриптове за конвертиране (превръщане нагоре по веригата Less към Sass) |
test/ |
Компилационни тестове |
templates/ |
Манифест на пакет Compass |
vendor/assets/ |
Sass, JavaScript и файлове с шрифтове |
Rakefile |
Вътрешни задачи, като рейк и конвертиране |
Посетете хранилището на GitHub на порта Sass, за да видите тези файлове в действие.
За информация как да инсталирате и използвате Bootstrap за Sass, вижте readme на хранилището на GitHub . Това е най-актуалният източник и включва информация за използване с Rails, Compass и стандартни Sass проекти.