Reboot
Reboot, in samling elemint-spesifike CSS-feroarings yn ien bestân, kickstart Bootstrap om in elegante, konsekwinte en ienfâldige basisline te leverjen om op te bouwen.
Oanpak
Reboot bout op Normalize, en leveret in protte HTML-eleminten mei wat eigensinnige stilen mei allinich elemintselektors. Oanfoljende styling wurdt allinich dien mei klassen. Bygelyks, wy reboote guon <table>
stilen foar in ienfâldiger baseline en letter jouwe .table
, .table-bordered
, en mear.
Hjir binne ús rjochtlinen en redenen foar it kiezen wat te oerskriuwen yn Reboot:
- Update guon browser-standertwearden om
rem
s te brûken ynstee fanem
s foar skaalbere komponint-ôfstân. - Avoid
margin-top
. Fertikale marzjes kinne ynstoarte, wat ûnferwachte resultaten opleverje. Noch wichtiger, in inkele rjochting fanmargin
is in ienfâldiger mentale model. - Foar makliker skaalfergrutting oer apparaatgrutte moatte blokeleminten
rem
s brûke foarmargin
s. - Hâld deklaraasjes fan
font
-relatearre eigenskippen op in minimum, brûkinherit
wannear mooglik.
Side standerts
De <html>
en <body>
eleminten wurde bywurke om bettere side-wide standerts te leverjen. Mear spesifyk:
- De
box-sizing
is globaal ynsteld op elk elemint-ynklusyf*::before
en*::after
, oanborder-box
. Dit soarget derfoar dat de opjûne breedte fan elemint wurdt nea oerskreden fanwege padding of grins.- Gjin basis
font-size
wurdt ferklearre op de<html>
, mar16px
wurdt oannommen (de browser standert).font-size: 1rem
wurdt tapast op 'e<body>
foar maklik responsive type-skaalfergrutting fia mediafragen, wylst de brûkersfoarkarren respektearje en in mear tagonklike oanpak garandearje. Dizze browser standert kin oerskreaun wurde troch it feroarjen fan de$font-size-root
fariabele.
- Gjin basis
- De
<body>
set ek in globalefont-family
,font-weight
,line-height
, encolor
. Dit wurdt letter erfd troch guon foarmeleminten om lettertype-ynkonsistinsjes foar te kommen. - Foar feiligens
<body>
hat de in ferklearrebackground-color
, standert op#fff
.
Native lettertypestapel
Bootstrap brûkt in "native font stack" of "systeem font stack" foar optimale tekstwerjefte op elk apparaat en OS. Dizze systeemlettertypen binne spesifyk ûntworpen mei hjoeddeistige apparaten yn gedachten, mei ferbettere werjefte op skermen, stipe foar fariabele lettertypen, en mear. Lês mear oer native font stacks yn dit Smashing Magazine artikel .
$font-family-sans-serif:
// Cross-platform generic font family (default user interface font)
system-ui,
// Safari for macOS and iOS (San Francisco)
-apple-system,
// Windows
"Segoe UI",
// Android
Roboto,
// Basic web fallback
"Helvetica Neue", Arial,
// Linux
"Noto Sans",
"Liberation Sans",
// Sans serif fallback
sans-serif,
// Emoji fonts
"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
Tink derom dat om't de lettertypestapel emoji-lettertypen omfettet, in protte gewoane symboal / dingbat unicode-tekens wurde werjûn as mearkleurige piktogrammen. Har uterlik sil fariearje, ôfhinklik fan 'e styl brûkt yn' e native emoji-lettertype fan 'e browser/platfoarm, en se wurde net beynfloede troch CSS- color
stilen.
Dit font-family
wurdt tapast op de <body>
en automatysk erfde globaal hiele Bootstrap. Om de globale font-family
, bywurkje $font-family-base
en opnij kompilearje Bootstrap.
Kopteksten en paragrafen
Alle koptekst-eleminten - bgl. <h1>
- en <p>
wurde weromset om har te margin-top
ferwiderjen. Koppen hawwe margin-bottom: .5rem
tafoege en paragrafen margin-bottom: 1rem
foar maklike ôfstân.
Heading | Foarbyld |
---|---|
<h1></h1> |
h1. Bootstrap heading |
<h2></h2> |
h2. Bootstrap heading |
<h3></h3> |
h3. Bootstrap heading |
<h4></h4> |
h4. Bootstrap heading |
<h5></h5> |
h5. Bootstrap heading |
<h6></h6> |
h6. Bootstrap heading |
Listen
Alle listen <ul>
- , <ol>
, en <dl>
- hawwe har margin-top
fuortsmiten en in margin-bottom: 1rem
. Nested listen hawwe gjin margin-bottom
. Wy hawwe ek de padding-left
oan <ul>
en <ol>
eleminten weromset.
- Alle listen hawwe har boppemarge fuortsmiten
- En har ûnderste marzje normalisearre
- Neste listen hawwe gjin ûndermarge
- Op dizze manier hawwe se in mear evenredich uterlik
- Benammen as folge troch mear list items
- De linker padding is ek weromset
- Hjir is in bestelde list
- Mei in pear list items
- It hat deselde algemiene útstrieling
- As de foarige unordered list
Foar ienfâldiger styling, dúdlike hiërargy en bettere spacing, beskriuwingslisten hawwe bywurke margin
s. <dd>
s weromsette margin-left
nei 0
en tafoegje margin-bottom: .5rem
. <dt>
s binne fet .
- Beskriuwingslisten
- In beskriuwingslist is perfekt foar it definiearjen fan termen.
- Term
- Definysje foar de term.
- In twadde definysje foar deselde term.
- In oare term
- Definysje foar dizze oare term.
Inline koade
Wrap ynline snippets fan koade mei <code>
. Wês wis dat jo HTML-hoekheakjes ûntkomme.
<section>
moatte wurde ferpakt as inline.
For example, <code><section></code> should be wrapped as inline.
Koade blokken
Brûk <pre>
s foar meardere rigels koade. Wês der nochris wis fan dat jo alle hoekheakjes yn 'e koade ûntkomme foar juste rendering. It <pre>
elemint wurdt weromset om syn te ferwiderjen margin-top
en rem
ienheden te brûken foar har margin-bottom
.
<p>Sample text here...</p>
<p>And another line of sample text here...</p>
<pre><code><p>Sample text here...</p>
<p>And another line of sample text here...</p>
</code></pre>
Fariabelen
Foar it oanjaan fan fariabelen brûk de <var>
tag.
<var>y</var> = <var>m</var><var>x</var> + <var>b</var>
Meidogger ynfier
Brûk de <kbd>
om ynfier oan te jaan dy't typysk fia toetseboerd ynfierd wurdt.
Om ynstellings te bewurkjen, druk op ctrl + ,
To switch directories, type <kbd>cd</kbd> followed by the name of the directory.<br>
To edit settings, press <kbd><kbd>ctrl</kbd> + <kbd>,</kbd></kbd>
Sample útfier
Foar it oanjaan fan sampleútfier fan in programma brûk de <samp>
tag.
<samp>This text is meant to be treated as sample output from a computer program.</samp>
Tabellen
Tafels wurde in bytsje oanpast oan styl <caption>
s, collapse grinzen, en soargje konsekwint text-align
hiele. Oanfoljende feroarings foar grinzen, padding, en mear komme mei de .table
klasse .
Tabel heading | Tabel heading | Tabel heading | Tabel heading |
---|---|---|---|
Table cell | Table cell | Table cell | Table cell |
Table cell | Table cell | Table cell | Table cell |
Table cell | Table cell | Table cell | Table cell |
Forms
Various form elements have been rebooted for simpler base styles. Here are some of the most notable changes:
<fieldset>
s have no borders, padding, or margin so they can be easily used as wrappers for individual inputs or groups of inputs.<legend>
s, like fieldsets, have also been restyled to be displayed as a heading of sorts.<label>
s are set todisplay: inline-block
to allowmargin
to be applied.<input>
s,<select>
s,<textarea>
s, and<button>
s are mostly addressed by Normalize, but Reboot removes theirmargin
and setsline-height: inherit
, too.<textarea>
s are modified to only be resizable vertically as horizontal resizing often “breaks” page layout.<button>
s and<input>
button elements havecursor: pointer
when:not(:disabled)
.
These changes, and more, are demonstrated below.
Date & color input support
Keep in mind date inputs are not fully supported by all browsers, namely Safari.
Pointers on buttons
Reboot includes an enhancement for role="button"
to change the default cursor to pointer
. Add this attribute to elements to help indicate elements are interactive. This role isn’t necessary for <button>
elements, which get their own cursor
change.
<span role="button" tabindex="0">Non-button element button</span>
Misc elements
Address
The <address>
element is updated to reset the browser default font-style
from italic
to normal
. line-height
is also now inherited, and margin-bottom: 1rem
has been added. <address>
s are for presenting contact information for the nearest ancestor (or an entire body of work). Preserve formatting by ending lines with <br>
.
1355 Market St, Suite 900
San Francisco, CA 94103
P: (123) 456-7890 Full Name
[email protected]
Blockquote
The default margin
on blockquotes is 1em 40px
, so we reset that to 0 0 1rem
for something more consistent with other elements.
A well-known quote, contained in a blockquote element.
Someone famous in Source Title
Inline elements
The <abbr>
element receives basic styling to make it stand out amongst paragraph text.
Summary
The default cursor
on summary is text
, so we reset that to pointer
to convey that the element can be interacted with by clicking on it.
Some details
More info about the details.
Even more details
Here are even more details about the details.
HTML5 [hidden]
attribute
HTML5 adds a new global attribute named [hidden]
, which is styled as display: none
by default. Borrowing an idea from PureCSS, we improve upon this default by making [hidden] { display: none !important; }
to help prevent its display
from getting accidentally overridden.
<input type="text" hidden>
jQuery incompatibility
[hidden]
is not compatible with jQuery’s $(...).hide()
and $(...).show()
methods. Therefore, we don’t currently especially endorse [hidden]
over other techniques for managing the display
of elements.
To merely toggle the visibility of an element, meaning its display
is not modified and the element can still affect the flow of the document, use the .invisible
class instead.