White-space-egenskapen styrer hvordan tekst håndteres på elementet den brukes på. La oss si at du har HTML akkurat slik:
A bunch of words you see.
Du har stylet div til å ha en angitt bredde på 100 px. Med en rimelig skriftstørrelse er det for mye tekst til å passe inn i 100 px. Uten å gjøre noe, standard white-space
er verdi normal
, og teksten vil vikle. Se eksemplet nedenfor eller følg med demoen hjemme.
div ( /* This is the default, you don't need to explicitly declare it unless overriding another declaration */ white-space: normal; )
Hvis du vil forhindre at teksten brytes inn, kan du søke white-space: nowrap;
Legg merke til i HTML-kodeeksempel øverst i denne artikkelen, det er faktisk to linjeskift, en før tekstlinjen og en etter, som gjør at teksten kan være på sin egen linje (i koden). Når teksten gjengis i nettleseren, ser disse linjeskiftene ut som om de er fjernet. Ekstra striper er ekstra mellomrom på linjen før første bokstav. Hvis vi vil tvinge nettleseren til å vise disse linjeskiftene og ekstra tegn på mellomrom, kan vi brukewhite-space: pre;
Det kalles pre
fordi oppførselen er som om du hadde pakket teksten inn
Kanskje du liker hvor pre
ærefullt hvite mellomrom og bryter, men du trenger at teksten skal brytes inn i stedet for potensielt å bryte ut av den overordnede beholderen. Det er det som white-space: pre-wrap;
er for:
Til slutt white-space: pre-line;
vil bryte linjer der de bryter inn kode, men ekstra hvite mellomrom er fortsatt strippet.
Interessant, den siste linjeskiftet blir ikke respektert. I henhold til CSS 2.1-spesifikasjonen: "Linjene er brutt ved bevarte nye linjetegn, og etter behov for å fylle linjeboksene." så kanskje det gir mening.
Her er en tabell for å forstå oppførselen til alle de forskjellige verdiene:
Nye linjer | Rom og faner | Innpakning av tekst | |
---|---|---|---|
normal | Kollapse | Kollapse | Pakke inn |
pre | Bevare | Bevare | Ingen omslag |
nowrap | Kollapse | Kollapse | Ingen omslag |
pre-wrap | Bevare | Bevare | Pakke inn |
pre-line | Bevare | Kollapse | Pakke inn |
I CSS3 vil white-space
eiendommen bokstavelig talt følge det diagrammet og kartlegge egenskapene til text-space-collapse
og text-wrap
deretter.
Mer informasjon
- Mozilla Docs
Nettleserstøtte
Litt mer komplisert enn den vanlige støttetabellen, siden hver verdi har forskjellige nivåer av støtte:
Nettleser | Versjon | Støtte av |
---|---|---|
Internet Explorer | 5.5 | normal | nowrap |
6.0 | normal | pre | nowrap |
|
8+ | normal | pre | nowrap | pre-wrap | pre-line |
|
Firefox (Gecko) | 1,0 (1,0) | normal | pre | nowrap | -moz-pre-wrap |
3,0 (1,9) | normal | pre | nowrap | pre-wrap | -moz-pre-wrap |
|
3.5 (1.9.1) | normal | pre | nowrap | pre-wrap | pre-line |
|
Opera | 4.0 | normal | pre | nowrap |
8.0 | normal | pre | nowrap | pre-wrap |
|
9.5 | normal | pre | nowrap | pre-wrap | pre-line |
|
Safari (WebKit) | 1,0 (85) | normal | pre | nowrap |
3,0 (522) | normal | pre | nowrap | pre-wrap | pre-line |