Perkraukite
Reboot, konkretiems elementams būdingų CSS pakeitimų rinkinys viename faile, paleiskite „Bootstrap“, kad būtų galima sukurti elegantišką, nuoseklų ir paprastą pagrindą.
metodas
Paleidimas iš naujo grindžiamas Normalizavimo funkcija, suteikiant daug HTML elementų, kurių stiliai yra šiek tiek apgalvoti, naudojant tik elementų parinkiklius. Papildomas stilius atliekamas tik su klasėmis. Pavyzdžiui, kai kuriuos <table>
stilius paleidžiame iš naujo, kad būtų paprastesnė pradinė linija, o vėliau pateikiame .table
, .table-bordered
, ir daugiau.
Štai mūsų gairės ir priežastys, kodėl pasirenkate, ką pakeisti perkrovimo metu:
- Atnaujinkite kai kurias naršyklės numatytąsias reikšmes, kad būtų naudojamas
rem
s, o neem
s keičiamam komponentų tarpui. - Venkite
margin-top
. Vertikalios paraštės gali sugriūti ir duoti netikėtų rezultatų. Tačiau dar svarbiau, kad viena kryptismargin
yra paprastesnis psichinis modelis. - Kad būtų lengviau keisti įrenginio dydžius, bloko elementuose s turėtų būti naudojamas
rem
smargin
. - Sumažinkite susijusių savybių deklaracijas
font
, naudokite,inherit
kai tik įmanoma.
Puslapio numatytieji nustatymai
Elementai <html>
ir <body>
atnaujinami, kad būtų geresni viso puslapio numatytieji nustatymai. Konkrečiau:
- Visame
box-sizing
pasaulyje nustatytas kiekvienam elementui, įskaitant*::before
ir*::after
, įborder-box
. Tai užtikrina, kad deklaruotas elemento plotis niekada nebus viršytas dėl užpildymo ar kraštinės. - Jokia bazė
font-size
nėra deklaruojama<html>
, bet16px
yra laikoma (naršyklės numatytoji reikšmė).font-size: 1rem
Taikoma<body>
lengvai reaguojančiam tipo mastelio keitimui naudojant medijos užklausas, kartu atsižvelgiant į vartotojo nuostatas ir užtikrinant labiau prieinamą metodą. - Taip
<body>
pat nustatomi visuotiniaifont-family
,line-height
irtext-align
. Tai vėliau paveldima kai kurių formos elementų, kad būtų išvengta šrifto neatitikimų. - Saugumo sumetimais
<body>
yra paskelbtasbackground-color
, pagal nutylėjimą#fff
.
Vietinis šriftų krūva
Numatytieji žiniatinklio šriftai („Helvetica Neue“, „Helvetica“ ir „Arial“) buvo pašalinti „Bootstrap 4“ ir pakeisti „savuoju šriftų krūva“, kad tekstas būtų optimaliai atvaizduojamas kiekviename įrenginyje ir OS. Skaitykite daugiau apie savo šriftų krūvas šiame Smashing Magazine straipsnyje .
$font-family-sans-serif:
// Safari for macOS and iOS (San Francisco)
-apple-system,
// Chrome < 56 for macOS (San Francisco)
BlinkMacSystemFont,
// 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;
Atminkite, kad šriftų krūvoje yra jaustukų šriftų, todėl daugelis įprastų simbolių / dingbat Unicode simbolių bus pateikiami kaip daugiaspalvės piktogramos. Jų išvaizda skirsis priklausomai nuo stiliaus, naudojamo naršyklės / platformos vietiniame jaustukų šrifte, ir jiems neturės įtakos jokie CSS color
stiliai.
Tai font-family
taikoma <body>
ir automatiškai paveldima visame pasaulyje visame „Bootstrap“. Norėdami perjungti visuotinį font-family
, atnaujinkite $font-family-base
ir iš naujo kompiliuokite Bootstrap.
Antraštės ir pastraipos
Visi antraštės elementai, pvz., <h1>
ir <p>
yra nustatomi iš naujo, kad būtų margin-top
pašalinti. Pridėtos antraštės margin-bottom: .5rem
ir pastraipos margin-bottom: 1rem
, kad būtų lengviau išdėstyti tarpus.
Antraštė | Pavyzdys |
---|---|
<h1></h1> |
h1. Bootstrap antraštė |
<h2></h2> |
h2. Bootstrap antraštė |
<h3></h3> |
h3. Bootstrap antraštė |
<h4></h4> |
h4. Bootstrap antraštė |
<h5></h5> |
h5. Bootstrap antraštė |
<h6></h6> |
h6. Bootstrap antraštė |
Sąrašai
Visi sąrašai <ul>
– , <ol>
, ir <dl>
– yra margin-top
pašalinti ir margin-bottom: 1rem
. Įdėtuose sąrašuose nėra margin-bottom
.
- Visų sąrašų viršutinė paraštė pašalinta
- Ir jų apatinė marža normalizavosi
- Įdėtieji sąrašai neturi apatinės paraštės
- Taip jie įgauna tolygesnę išvaizdą
- Ypač tada, kai seka daugiau sąrašo elementų
- Kairysis užpildas taip pat buvo nustatytas iš naujo
- Štai užsakytas sąrašas
- Su keliais sąrašo elementais
- Jis turi tą pačią bendrą išvaizdą
- Kaip ir ankstesnis netvarkingas sąrašas
Siekiant paprastesnio stiliaus, aiškios hierarchijos ir geresnių tarpų, aprašymų sąrašai buvo atnaujinti margin
s. <dd>
s iš naujo margin-left
nustatyti 0
ir pridėti margin-bottom: .5rem
. <dt>
s yra paryškinti .
- Aprašų sąrašai
- Aprašų sąrašas puikiai tinka terminams apibrėžti.
- Terminas
- Termino apibrėžimas.
- Antrasis to paties termino apibrėžimas.
- Kitas terminas
- Šio kito termino apibrėžimas.
Iš anksto suformatuotas tekstas
Elementas <pre>
nustatomas iš naujo, kad jis būtų pašalintas margin-top
ir būtų naudojami rem
jo vienetai margin-bottom
.
.example-element { paraštė-apačia: 1rem; }
Lentelės
Lentelės šiek tiek pakoreguotos pagal stilių <caption>
s, sutraukiamos kraštinės ir užtikrinamas nuoseklumas text-align
. Papildomi kraštinių, užpildymo ir kt. pakeitimai pateikiami su .table
klase .
Lentelės antraštė | Lentelės antraštė | Lentelės antraštė | Lentelės antraštė |
---|---|---|---|
Lentelės langelis | Lentelės langelis | Lentelės langelis | Lentelės langelis |
Lentelės langelis | Lentelės langelis | Lentelės langelis | Lentelės langelis |
Lentelės langelis | Lentelės langelis | Lentelės langelis | Lentelės langelis |
Formos
Įvairūs formos elementai buvo perkrauti paprastesniems baziniams stiliams. Štai keletas ryškiausių pakeitimų:
<fieldset>
s neturi kraštinių, užpildymo ar paraštės, todėl juos galima lengvai naudoti kaip atskirų įvesties ar įvesties grupių įvynioklius.<legend>
s, kaip ir laukų rinkiniai, taip pat buvo pertvarkyti, kad būtų rodomi kaip antraštė.<label>
s yra nustatyti,display: inline-block
kadmargin
būtų galima taikyti.<input>
s,<select>
s,<textarea>
s ir<button>
s dažniausiai sprendžia Normalizavimas, bet Reboot pašalina juosmargin
ir nustatoline-height: inherit
.<textarea>
s yra modifikuojami, kad būtų galima keisti tik vertikaliai, nes horizontalus dydžio keitimas dažnai „pertraukia“ puslapio išdėstymą.<button>
s ir<input>
mygtukų elementai turicursor: pointer
kada:not(:disabled)
.
Šie ir kiti pakeitimai parodyti toliau.
Rodyklės ant mygtukų
Paleidimas iš naujo apima patobulinimą, role="button"
leidžiantį pakeisti numatytąjį žymeklį į pointer
. Pridėkite šį atributą prie elementų, kad parodytumėte, jog elementai yra interaktyvūs. Šis vaidmuo nėra būtinas <button>
elementams, kurie cursor
keičiasi savaime.
<span role="button" tabindex="0">Non-button element button</span>
Įvairūs elementai
Adresas
Elementas <address>
atnaujintas, kad būtų iš naujo nustatytas numatytasis naršyklės nustatymas font-style
iš italic
į normal
. line-height
taip pat dabar yra paveldėtas ir margin-bottom: 1rem
buvo pridėtas. <address>
s yra skirti artimiausio protėvio (arba viso darbo) kontaktinei informacijai pateikti. Išsaugokite formatavimą užbaigdami eilutes <br>
.
1355 Market St, Suite 900
San Francisco, CA 94103
P: (123) 456-7890 Visas vardas
pirmas.paskutinė@example.com
Citatos blokas
Numatytasis margin
kabučių nustatymas yra 1em 40px
, todėl iš naujo nustatome jas, kad būtų 0 0 1rem
geriau suderinami su kitais elementais.
Gerai žinoma citata, esanti blockquote elemente.
Inline elementai
Elementas <abbr>
įgauna pagrindinį stilių, kad jis išsiskirtų iš pastraipos teksto.
Santrauka
Numatytoji cursor
suvestinė yra text
, todėl ją nustatome iš naujo, kad pointer
parodytume, jog su elementu galima sąveikauti jį spustelėjus.
Kai kurios detalės
Daugiau informacijos apie detales.
Dar daugiau detalių
Čia yra dar daugiau informacijos apie detales.
HTML5 [hidden]
atributas
HTML5 prideda naują visuotinį atributą pavadinimu[hidden]
, kurio stilius display: none
pagal numatytuosius nustatymus. Pasiskolinę idėją iš PureCSS , patobuliname šį numatytąjį nustatydami, [hidden] { display: none !important; }
kad išvengtume netyčinio jos display
nepaisymo. Nors [hidden]
IE10 jo nepalaiko, aiškus pareiškimas mūsų CSS išsprendžia šią problemą.
<input type="text" hidden>
„jQuery“ nesuderinamumas
[hidden]
nesuderinamas su jQuery $(...).hide()
ir $(...).show()
metodais. Todėl šiuo metu ypač nepritariame [hidden]
kitiems display
elementų valdymo metodams.
Norėdami tik perjungti elemento matomumą, ty jis display
nėra pakeistas ir elementas vis tiek gali paveikti dokumento eigą, naudokite klasę.invisible
.