Reporniți
Repornire, o colecție de modificări CSS specifice unui element într-un singur fișier, pornește Bootstrap pentru a oferi o bază elegantă, consecventă și simplă pe care să o construiți.
Abordare
Repornirea se bazează pe Normalize, oferind multe elemente HTML cu stiluri oarecum obișnuite, folosind doar selectori de elemente. Stilizarea suplimentară se face numai cu cursuri. De exemplu, repornim unele <table>
stiluri pentru o linie de bază mai simplă și mai târziu oferim .table
, .table-bordered
și multe altele.
Iată instrucțiunile și motivele noastre pentru a alege ce să înlocuiți în repornire:
- Actualizați unele valori implicite ale browserului pentru a utiliza
rem
s în loc deem
s pentru spațierea componentelor scalabilă. - Evitați
margin-top
. Marginile verticale se pot prăbuși, dând rezultate neașteptate. Mai important, totuși, o singură direcțiemargin
este un model mental mai simplu. - Pentru o scalare mai ușoară pe dimensiunile dispozitivului, elementele bloc ar trebui să folosească
rem
s pentrumargin
s. - Păstrați declarațiile de
font
proprietăți legate de -la un nivel minim, folosind ori deinherit
câte ori este posibil.
Valori implicite ale paginii
Elementele <html>
și <body>
sunt actualizate pentru a oferi valori implicite mai bune la nivel de pagină. Mai exact:
- Este
box-sizing
setat global pentru fiecare element, inclusiv*::before
și*::after
, laborder-box
. Acest lucru asigură că lățimea declarată a elementului nu este niciodată depășită din cauza căptușelii sau a chenarului.- Nicio bază nu
font-size
este declarată pe<html>
, dar16px
este presupusă (prestabilit browser).font-size: 1rem
este aplicat<body>
pentru o scalare ușoară a tipului de răspuns prin interogări media, respectând în același timp preferințele utilizatorului și asigurând o abordare mai accesibilă. Acest browser implicit poate fi suprascris prin modificarea$font-size-root
variabilei.
- Nicio bază nu
- De
<body>
asemenea, setează un globalfont-family
,font-weight
,line-height
, șicolor
. Acest lucru este moștenit mai târziu de unele elemente de formular pentru a preveni inconsecvențele fonturilor. - Pentru siguranță,
<body>
are un declaratbackground-color
, implicit la#fff
.
Stiva de fonturi native
Bootstrap utilizează o „stivă de fonturi native” sau „stiva de fonturi de sistem” pentru redarea optimă a textului pe fiecare dispozitiv și sistem de operare. Aceste fonturi de sistem au fost concepute special ținând cont de dispozitivele de astăzi, cu randare îmbunătățită pe ecrane, suport pentru fonturi variabile și multe altele. Citiți mai multe despre stivele de fonturi native în acest articol Smashing Magazine .
$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;
Rețineți că, deoarece stiva de fonturi include fonturi emoji, multe simboluri comune/dingbat Unicode vor fi redate ca pictograme multicolore. Aspectul lor va varia, în funcție de stilul folosit în fontul emoji nativ al browserului/platformei și nu vor fi afectați de niciun color
stil CSS.
Acest lucru font-family
este aplicat <body>
și moștenit automat la nivel global prin Bootstrap. Pentru a comuta la nivel global font-family
, actualizați $font-family-base
și recompilați Bootstrap.
Titluri și paragrafe
Toate elementele de antet, de exemplu, <h1>
și <p>
sunt resetate pentru a fi margin-top
eliminate. S-au margin-bottom: .5rem
adăugat titluri și paragrafe margin-bottom: 1rem
pentru spațiere ușoară.
Titlu | Exemplu |
---|---|
<h1></h1> |
h1. Titlu bootstrap |
<h2></h2> |
h2. Titlu bootstrap |
<h3></h3> |
h3. Titlu bootstrap |
<h4></h4> |
h4. Titlu bootstrap |
<h5></h5> |
h5. Titlu bootstrap |
<h6></h6> |
h6. Titlu bootstrap |
Liste
Toate listele — <ul>
, <ol>
, și <dl>
— au margin-top
fost eliminate și un margin-bottom: 1rem
. Listele imbricate nu au margin-bottom
. Am resetat și elementele padding-left
pornit și .<ul>
<ol>
- Toate listele au marja de sus eliminată
- Și marja lor inferioară s-a normalizat
- Listele imbricate nu au margine de jos
- Astfel au un aspect mai uniform
- În special atunci când este urmat de mai multe elemente din listă
- Căptușeala din stânga a fost de asemenea resetată
- Iată o listă ordonată
- Cu câteva elemente din listă
- Are același aspect general
- Ca și lista anterioară neordonată
Pentru un stil mai simplu, o ierarhie clară și o spațiere mai bună, listele de descriere au actualizate margin
s. s <dd>
resetați și adăugați . s sunt îngroșate .margin-left
0
margin-bottom: .5rem
<dt>
- Liste de descriere
- O listă de descriere este perfectă pentru definirea termenilor.
- Termen
- Definiție pentru termen.
- O a doua definiție pentru același termen.
- Un alt termen
- Definiție pentru acest alt termen.
Cod inline
Înfășurați fragmente de cod inline cu <code>
. Asigurați-vă că scăpați de parantezele unghiulare HTML.
<section>
ar trebui să fie înfășurat ca inline.
For example, <code><section></code> should be wrapped as inline.
Blocuri de cod
Utilizați <pre>
s pentru mai multe linii de cod. Încă o dată, asigurați-vă că scăpați de orice paranteze unghiulare din cod pentru o randare corectă. Elementul <pre>
este resetat pentru a-și elimina margin-top
și pentru a utiliza rem
unități pentru 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>
Variabile
Pentru a indica variabile utilizați <var>
eticheta.
<var>y</var> = <var>m</var><var>x</var> + <var>b</var>
Intrarea utilizatorului
Utilizați <kbd>
pentru a indica intrarea care este de obicei introdusă prin tastatură.
Pentru a edita setările, apăsați 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>
Eșantion de ieșire
Pentru a indica rezultatul eșantionului dintr-un program, utilizați <samp>
eticheta.
<samp>This text is meant to be treated as sample output from a computer program.</samp>
Mese
Tabelele sunt ușor ajustate la stiluri <caption>
, restrânge chenarele și asigură coerență text-align
pe tot parcursul. Modificări suplimentare pentru chenare, umplutură și multe altele vin cu clasa .table
.
Titlul tabelului | Titlul tabelului | Titlul tabelului | Titlul tabelului |
---|---|---|---|
Celula de tabel | Celula de tabel | Celula de tabel | Celula de tabel |
Celula de tabel | Celula de tabel | Celula de tabel | Celula de tabel |
Celula de tabel | Celula de tabel | Celula de tabel | Celula de tabel |
Forme
Diverse elemente de formular au fost repornite pentru stiluri de bază mai simple. Iată câteva dintre cele mai notabile schimbări:
<fieldset>
Nu au margini, umplutură sau marjă, astfel încât acestea pot fi utilizate cu ușurință ca înveliș pentru intrări individuale sau grupuri de intrări.<legend>
S-urile, ca și seturile de câmpuri, au fost, de asemenea, modificate pentru a fi afișate ca un fel de titlu.<label>
s sunt setate pentrudisplay: inline-block
a permitemargin
aplicarea.<input>
s,<select>
s,<textarea>
s și<button>
s sunt abordate în cea mai mare parte de Normalize, dar Reboot eliminămargin
și seturile lor șiline-height: inherit
.<textarea>
E-urile sunt modificate pentru a putea fi redimensionate doar pe verticală, deoarece redimensionarea orizontală „întrerupe” adesea aspectul paginii.<button>
elementele s și<input>
buton aucursor: pointer
când:not(:disabled)
.
Aceste schimbări și multe altele sunt demonstrate mai jos.
Suport pentru introducerea datei și a culorilor
Rețineți că introducerea datei nu este pe deplin acceptată de toate browserele, și anume de Safari.
Indicatoare pe butoane
Repornirea include o îmbunătățire pentru role="button"
a schimba cursorul implicit în pointer
. Adăugați acest atribut elementelor pentru a indica elementele interactive. Acest rol nu este necesar pentru <button>
elemente, care primesc propria lor cursor
schimbare.
<span role="button" tabindex="0">Non-button element button</span>
Diverse elemente
Abordare
Elementul <address>
este actualizat pentru a reseta browserul implicit font-style
de la italic
la normal
. line-height
este și acum moștenit și margin-bottom: 1rem
a fost adăugat. <address>
sunt pentru prezentarea informațiilor de contact pentru cel mai apropiat strămoș (sau un întreg corp de lucrare). Păstrați formatarea terminând liniile cu <br>
.
1355 Market St, Suite 900
San Francisco, CA 94103
P: (123) 456-7890 Nume complet
[email protected]
Blockquote
Valoarea implicită margin
pentru ghilimelele este 1em 40px
, așa că o resetam la 0 0 1rem
ceva mai consistent cu alte elemente.
Un citat binecunoscut, conținut într-un element blockquote.
Cineva celebru în Titlul sursă
Elemente în linie
Elementul <abbr>
primește un stil de bază pentru a-l scoate în evidență printre textul paragrafului.
rezumat
cursor
Rezumatul implicit este text
, așa că îl resetam la pointer
pentru a transmite că elementul poate fi interacționat făcând clic pe el.
Câteva detalii
Mai multe informații despre detalii.
Chiar mai multe detalii
Iată și mai multe detalii despre detalii.
[hidden]
atribut HTML5
HTML5 adaugă un nou atribut global numit[hidden]
, care este stilat ca display: none
implicit. Împrumutând o idee de la PureCSS , îmbunătățim această valoare implicită, ajutând la [hidden] { display: none !important; }
prevenirea suprasolicitarii display
accidentale.
<input type="text" hidden>
Incompatibilitate jQuery
[hidden]
nu este compatibil cu jQuery $(...).hide()
și $(...).show()
metodele. Prin urmare, în prezent nu susținem în mod special [hidden]
alte tehnici de gestionare display
a elementelor.
Pentru a comuta pur și simplu vizibilitatea unui element, adică display
nu este modificat și elementul poate afecta în continuare fluxul documentului, utilizați în schimb .invisible
clasa .