max-inline-size
är en logisk egenskap i CSS som definierar den maximala bredden på ett element när det writing-mode
är horisontellt, eller den maximala höjden på elementet när det writing-mode
är vertikalt.
.element ( max-inline-size: 500px; writing-mode: vertical-lr; )
Som du kanske har gissat av exemplet ovan writing-mode
ändrar egenskapen orienteringen av texten och layoutflödet med 90 grader.
Den främsta anledningen till att ändra orienteringen, förutom att skapa snygga mönster, är att tillgodose internationalisering på en webbplats. Många östasiatiska manus som kinesiska, japanska och koreanska kan skrivas horisontellt eller vertikalt. Med hjälp av logiska egenskaper kan vi tillhandahålla rätt storleksriktning för element baserat på användarens skrivläge.
Jen Simmons har en artikel och presentation som går djupare in i CSS-skrivlägen.
Kan vi inte bara använda max-width
fastigheten?
ja! Men om du inte stöder Internet Explorer finns det ingen anledning att inte använda max-inline-size
istället. max-width
är en fysisk dimension, så när skrivläget ändras behåller ett element sin horisontella breddstorlek och bryter en layout när den är inställd att vara vertikal. Logiska egenskaper, som max-inline-size
, kan svara på dessa förändringar och tillämpa storleken i rätt riktning.
Syntax
max-inline-size: ;
- Första:
auto
- Gäller för: samma som
height
ochwidth
- Ärvt: nej
- Procentandelar: för motsvarande fysiska egendom
- Beräknat värde: samma som
height
ochwidth
- Animationstyp: efter beräknad värdetyp
Värden
/* Length values */ max-inline-size: 250px; max-inline-size: 5rem;
/* Percentage values */ max-inline-size: 75%;
/* Keyword values */ max-inline-size: auto; max-inline-size: fit-content(5rem); max-inline-size: max-content; max-inline-size: min-content;
/* Global values */ max-inline-size: inherit; max-inline-size: initial; max-inline-size: unset;
Demo
När den writing-mode
är inställd på vertical-rl
roterar innehållet och ändrar layouten. Lådans bredd max-width
kommer att rotera med innehållet. Men max-inline-size
är smart! Det lämnar sin bredd i takt, oavsett writing-mode
värde. Växla writing-mode
i följande demo för att se skillnaden mellan de två.
Webbläsarstöd
IE | Kant | Firefox | Krom | Safari | Opera |
---|---|---|---|---|---|
Nej | 79+ | 41+ | 57 | 12.1+ | 44+ |
Android Chrome | Android Firefox | Android-webbläsare | iOS Safari | Opera Mobile |
---|---|---|---|---|
85+ | 79+ | 81+ | 12.2+ | 59+ |
Observera att stöd för användning av följande funktioner kan skilja sig från stöd för fastigheten:
fit-content()
max-content()
min-content()
Mer information
Artikel den 31 augusti 2018CSS logiska egenskaper





skrivläge
.element ( writing-mode: vertical-rl; )

