CSS
Глобальні налаштування CSS, фундаментальні елементи HTML, стилізовані та покращені за допомогою розширюваних класів, а також вдосконалена система сіток.
Глобальні налаштування CSS, фундаментальні елементи HTML, стилізовані та покращені за допомогою розширюваних класів, а також вдосконалена система сіток.
Ознайомтеся з ключовими елементами інфраструктури Bootstrap, включаючи наш підхід до кращої, швидшої та потужнішої веб-розробки.
Bootstrap використовує певні елементи HTML і властивості CSS, які потребують використання документа HTML5. Додайте його на початку всіх ваших проектів.
У Bootstrap 2 ми додали додаткові стилі, зручні для мобільних пристроїв, для ключових аспектів фреймворку. З Bootstrap 3 ми переписали проект, щоб він був дружнім до мобільних пристроїв із самого початку. Замість того, щоб додавати додаткові мобільні стилі, вони запікаються прямо в ядро. Фактично, Bootstrap — це перш за все мобільний пристрій . Стилі Mobile first можна знайти у всій бібліотеці, а не в окремих файлах.
Щоб забезпечити належне відтворення та сенсорне масштабування, додайте мета-тег вікна перегляду до свого <head>
.
Ви можете вимкнути можливості масштабування на мобільних пристроях, додавши user-scalable=no
мета-тег вікна перегляду. Це вимикає масштабування, тобто користувачі можуть лише прокручувати, і ваш сайт більше схожий на рідну програму. Загалом, ми не рекомендуємо це на кожному сайті, тому будьте обережні!
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 працюють на кількох пристроях за допомогою зручної таблиці.
Дуже маленькі пристрої Телефони (<768 пікселів) | Малі пристрої Планшети (≥768 пікселів) | Середні пристрої Настільні комп’ютери (≥992 пікселів) | Великі пристрої Настільні комп’ютери (≥1200 пікселів) | |
---|---|---|---|---|
Поведінка сітки | Постійно горизонтально | Згорнуто для початку, горизонтально над точками розриву | ||
Ширина контейнера | Немає (авто) | 750 пікселів | 970 пікселів | 1170 пікселів |
Префікс класу | .col-xs- |
.col-sm- |
.col-md- |
.col-lg- |
Кількість стовпців | 12 | |||
Ширина колонки | Авто | ~62 пікселів | ~81 пікселів | ~97 пікселів |
Ширина ринви | 30 пікселів (15 пікселів з кожного боку стовпця) | |||
Нестабільний | Так | |||
Зміщення | Так | |||
Упорядкування колонок | Так |
Використовуючи єдиний набір .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 |
Напівжирний 30 пікселів |
h3. Заголовок Bootstrap |
Напівжирний 24 пікселя |
h4. Заголовок Bootstrap |
Напівжирний 18 пікселів |
h5. Заголовок Bootstrap |
Напівжирний 14 пікселів |
h6. Заголовок Bootstrap |
Напівжирний 12 пікселів |
Створіть легший другорядний текст у будь-якому заголовку за допомогою загального <small>
тегу або .small
класу.
h1. Початковий заголовок Додатковий текст |
h2. Початковий заголовок Додатковий текст |
h3. Початковий заголовок Додатковий текст |
h4. Початковий заголовок Додатковий текст |
h5. Початковий заголовок Додатковий текст |
h6. Початковий заголовок Додатковий текст |
Глобальне значення Bootstrap за умовчанням font-size
становить 14 пікселів із line-height
значенням 1,428 . Це стосується <body>
і всіх абзаців. Крім того, <p>
(абзаци) отримують нижнє поле, що дорівнює половині обчисленої висоти рядка (10 пікселів за замовчуванням).
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>
тег.
Ви можете використовувати позначку, щобпідсвічуватитекст.
Для позначення блоків тексту, які були видалені, використовуйте <del>
тег.
Цей рядок тексту має розглядатися як видалений текст.
Для позначення блоків тексту, які більше не актуальні, використовуйте <s>
тег.
Цей рядок тексту має вважатися неточним.
Для позначення доповнень до документа використовуйте <ins>
тег.
Цей рядок тексту має розглядатися як доповнення до документа.
Для підкреслення тексту використовуйте <u>
тег.
Цей рядок тексту відображатиметься як підкреслений
Використовуйте стандартні теги виділення HTML зі спрощеними стилями.
Щоб зменшити виділення рядків або блоків тексту, використовуйте <small>
тег, щоб установити текст на 85% від розмі��у батьківського. Елементи заголовків отримують власні font-size
для вкладених <small>
елементів.
Ви також можете використовувати вбудований елемент із .small
замість будь-якого <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>
, але коли навігаційна панель розширюється, розширюються й ці.
Горизонтальні списки описів скоротять терміни, які занадто довгі, щоб поміститися в лівий стовпець text-overflow
. У вужчих вікнах перегляду вони зміняться на макет у вигляді стопки за замовчуванням.
Оберніть вбудовані фрагменти коду за допомогою <code>
.
<section>
слід загорнути як вбудований.
Використовуйте <kbd>
для позначення введення, яке зазвичай вводиться за допомогою клавіатури.
Використовуйте <pre>
для кількох рядків коду. Обов’язково зніміть будь-які кутові дужки в коді для правильного відтворення.
<p>Зразок тексту тут...</p>
За бажанням ви можете додати .pre-scrollable
клас, який встановлюватиме максимальну висоту 350 пікселів і забезпечуватиме смугу прокрутки по осі 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
вона прокручувалась горизонтально на невеликих пристроях (до 768 пікселів). Під час перегляду на будь-чому, що перевищує ширину 768 пікселів, ви не побачите жодної різниці в цих таблицях.
У адаптивних таблицях використовується функція 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>
) для елементів керування, вирівняних за лівим краєм і вбудованих блоків. Це стосується лише форм у вікнах перегляду, які мають ширину не менше 768 пікселів.
Введення та вибір 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
замість них a для :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>
, у наших компонентах nav і navbar підтримуються лише <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.
Іноді класи виділення не можуть бути застосовані через специфіку іншого селектора. У більшості випадків достатнім обхідним шляхом є обернути текст у <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.
Іноді контекстні фонові класи не можуть бути застосовані через специфіку іншого селектора. У деяких випадках достатнім обхідним шляхом є обернути вміст вашого елемента в <div>
клас.
Як і у випадку з контекстними кольорами , переконайтеся, що будь-яке значення, яке передається через колір, також передається у форматі, який не є чисто презентаційним.
Використовуйте загальну піктограму закриття, щоб відхилити такий вміст, як моди та сповіщення.
Використовуйте вставки, щоб вказати функціональність і напрямок спадного списку. Зауважте, що вказівка за замовчуванням автоматично змінюватиметься у спадних меню .
Перемістіть елемент ліворуч або праворуч за допомогою класу. !important
включено, щоб уникнути проблем із специфічністю. Класи також можна використовувати як міксини.
Установіть елемент display: block
і відцентруйте його через margin
. Доступний як міксин і клас.
Легко очистіть float
s, додавши .clearfix
до батьківського елемента . Використовує мікроклірфікс , який популяризував Ніколас Галлахер. Також можна використовувати як міксин.
Примусово показувати або приховувати елемент ( зокрема для програм зчитування з екрана ) за допомогою класів .show
і . .hidden
Ці класи використовуються !important
для уникнення конфліктів специфічності, як і швидкі floats . Вони доступні лише для перемикання рівня блоку. Їх також можна використовувати як міксини.
.hide
доступний, але він не завжди впливає на програми зчитування екрана та не підтримується , починаючи з версії 3.0.1. Використовуйте .hidden
або .sr-only
замість цього.
Крім того, .invisible
можна використовувати лише для перемикання видимості елемента, тобто його display
не змінено, і елемент усе ще може впливати на потік документа.
Приховати елемент на всіх пристроях, крім програм зчитування екрана , за допомогою .sr-only
. Поєднайте .sr-only
з .sr-only-focusable
, щоб знову показати елемент, коли він перебуває у фокусі (наприклад, користувач, який використовує лише клавіатуру). Необхідно для дотримання передових методів доступності . Також можна використовувати як міксини.
Використовуйте .text-hide
клас або mixin, щоб допомогти замінити текстовий вміст елемента фоновим зображенням.
Для швидшої розробки, адаптованої до мобільних пристроїв, використовуйте ці службові класи для показу та приховування вмісту на пристрої за допомогою медіа-запиту. Також включено корисні класи для перемикання вмісту під час друку.
Намагайтеся використовувати їх обмежено та уникайте створення абсолютно різних версій одного сайту. Натомість використовуйте їх, щоб доповнити презентацію кожного пристрою.
Використовуйте один або комбінацію доступних класів для перемикання вмісту між точками зупинки вікна перегляду.
Дуже маленькі пристроїТелефони (<768 пікселів) | Невеликі пристроїПланшети (≥768 пікселів) | Середні пристроїНастільні комп’ютери (≥992 пікселів) | Великі пристроїНастільні комп’ютери (≥1200 пікселів) | |
---|---|---|---|---|
.visible-xs-* |
Видно | Прихований | Прихований | Прихований |
.visible-sm-* |
Прихований | Видно | Прихований | Прихований |
.visible-md-* |
Прихований | Прихований | Видно | Прихований |
.visible-lg-* |
Прихований | Прихований | Прихований | Видно |
.hidden-xs |
Прихований | Видно | Видно | Видно |
.hidden-sm |
Видно | Прихований | Видно | Видно |
.hidden-md |
Видно | Видно | Прихований | Видно |
.hidden-lg |
Видно | Видно | Видно | Прихований |
Починаючи з версії 3.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
також існують, але вони застаріли з версії 3.2.0 . Вони приблизно еквівалентні .visible-*-block
, за винятком додаткових спеціальних випадків для перемикання <table>
елементів.
Подібно до звичайних адаптивних класів, використовуйте їх для перемикання вмісту для друку.
Заняття | Браузер | Роздрукувати |
---|---|---|
.visible-print-block .visible-print-inline .visible-print-inline-block |
Прихований | Видно |
.hidden-print |
Видно | Прихований |
Клас .visible-print
також існує, але він застарів , починаючи з версії 3.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 .
Міксин застарів , починаючи з версії 3.2.0, із запровадженням Autoprefixer. Щоб зберегти зворотну сумісність, Bootstrap продовжуватиме використовувати міксин усередині до Bootstrap v4.
border-radius
Сьогодні всі сучасні браузери підтримують властивість без префіксу . Таким чином, .border-radius()
Mixin не існує, але Bootstrap містить ярлики для швидкого округлення двох кутів на певній стороні об’єкта.
Якщо ваша цільова аудиторія використовує найновіші та найкращі веб-переглядачі та пристрої, переконайтеся, що ви використовуєте цей box-shadow
ресурс самостійно. Якщо вам потрібна підтримка старіших пристроїв Android (до версії 4) і iOS (до версії iOS 5), скористайтеся застарілим міксином, щоб вибрати потрібний -webkit
префікс.
З версії 3.1.0 міксин застарів , оскільки Bootstrap офіційно не підтримує застарілі платформи, які не підтримують стандартну властивість. Щоб зберегти зворотну сумісність, Bootstrap продовжуватиме використовувати міксин усередині до Bootstrap v4.
Обов’язково використовуйте rgba()
кольори в тіні прямокутника, щоб вони максимально гармонійно поєднувалися з фоном.
Кілька міксинів для гнучкості. Установіть одну інформацію про перехід або вкажіть окрему затримку та тривалість за потреби.
Міксини застаріли з версії 3.2.0 із введенням Autoprefixer. Щоб зберегти зворотну сумісність, Bootstrap продовжуватиме використовувати міксини всередині до Bootstrap v4.
Повертайте, масштабуйте, перекладайте (переміщуйте) або нахиляйте будь-який об’єкт.
Міксини застаріли з версії 3.2.0 із введенням Autoprefixer. Щоб зберегти зворотну сумісність, Bootstrap продовжуватиме використовувати міксини всередині до Bootstrap v4.
Єдиний міксин для використання всіх властивостей анімації CSS3 в одній декларації та інші міксини для окремих властивостей.
Міксини застаріли з версії 3.2.0 із введенням Autoprefixer. Щоб зберегти зворотну сумісність, Bootstrap продовжуватиме використовувати міксини всередині до Bootstrap v4.
Установіть непрозорість для всіх браузерів і забезпечте filter
запасний варіант для IE8.
Надайте контекст для елементів керування форми в кожному полі.
Створення стовпців за допомогою CSS в одному елементі.
Легко перетворюйте будь-які два кольори на фоновий градієнт. Отримайте додаткові знання та встановіть напрямок, використовуйте три кольори або використовуйте радіальний градієнт. За допомогою одного міксину ви отримуєте всі необхідні префікси синтаксису.
Ви також можете вказати кут стандартного двоколірного лінійного градієнта:
Якщо вам потрібен градієнт у стилі перукарської смужки, це теж легко. Просто вкажіть один колір, і ми накладемо напівпрозору білу смугу.
Збільште ставку та використовуйте замість цього три кольори. Установіть перший колір, другий колір, зупинку кольору другого кольору (відсоткове значення, наприклад 25%), і третій колір за допомогою цих міксинів:
Голови вгору! Якщо вам колись знадобиться видалити градієнт, обов’язково видаліть усі filter
додані вами елементи IE. Ви можете зробити це, використовуючи .reset-filter()
міксин поруч із background-image: none;
.
Службові міксини — це міксини, які поєднують не пов’язані властивості CSS для досягнення певної мети чи завдання.
Забудьте про додавання class="clearfix"
до будь-якого елемента, а натомість додайте .clearfix()
міксин, де потрібно. Використовує micro clearfix від Nicolas Gallagher .
Швидке центрування будь-якого елемента в межах його батьківського елемента. Потрібна установка width
або max-width
.
Простіше вказувати розміри об’єкта.
Легко налаштуйте параметри зміни розміру для будь-якої текстової області чи будь-якого іншого елемента. За замовчуванням стандартна поведінка браузера ( both
).
Легко обрізайте текст крапкою за допомогою одного міксина. Потрібно, щоб елемент був block
або був inline-block
рівнем.
Укажіть два шляхи зображення та розміри зображення @1x, і Bootstrap надасть медіа-запит @2x. Якщо у вас є багато зображень для обслуговування, подумайте над тим, щоб написати CSS зображення сітківки вручну в одному медіа-запиті.
Хоча Bootstrap побудовано на Less, він також має офіційний порт Sass . Ми зберігаємо його в окремому репозиторії GitHub і обробляємо оновлення за допомогою сценарію перетворення.
Оскільки порт Sass має окреме репо та обслуговує дещо іншу аудиторію, вміст проекту значно відрізняється від основного проекту Bootstrap. Це забезпечує максимальну сумісність порту Sass із якомога більшою кількістю систем на основі Sass.
шлях | опис |
---|---|
lib/ |
Gem-код Ruby (конфігурація Sass, інтеграція Rails і Compass) |
tasks/ |
Сценарії конвертера (перетворення висхідного потоку Less на Sass) |
test/ |
Збірні тести |
templates/ |
Маніфест пакета Compass |
vendor/assets/ |
Sass, JavaScript і файли шрифтів |
Rakefile |
Внутрішні завдання, такі як рейк і конвертація |
Відвідайте репозиторій GitHub порту Sass, щоб побачити ці файли в дії.
Щоб отримати інформацію про те, як встановити та використовувати Bootstrap для Sass, зверніться до readme репозиторію GitHub . Це найновіше джерело та містить інформацію для використання з Rails, Compass і стандартними проектами Sass.