Álelem (ek) használata
Pozícionálhat egy álelemet úgy, hogy az vagy az elem mögött legyen, és nagyobb legyen, a saját hátterével pedig szegélyhatást eredményezzen, vagy kisebb legyen és belül (de ügyeljen arra, hogy a tartalom a tetején legyen).
A több határot igénylő elemnek saját szegéllyel és relatív elhelyezéssel kell rendelkeznie.
.borders ( position: relative; border: 5px solid #f00; )
A másodlagos határt egy álelemmel egészítjük ki. Abszolút pozicionálással van beállítva, és be van illesztve felső / bal / alsó / jobb értékekkel. Ennek szintén lesz szegélye, és a tartalom alatt marad (megőrizve például a szöveg kiválaszthatóságát és a linkek kattinthatóságát) azáltal, hogy negatív z-index értéket ad neki. Vigyázz a negatív z-indexre, ha ez még egy elemen belül van, saját háttérszínnel, ez nem biztos, hogy működik.
.borders:before ( content: " "; position: absolute; z-index: -1; top: 5px; left: 5px; right: 5px; bottom: 5px; border: 5px solid #ffea00; )
Lásd Chris Coyier (@chriscoyier) Pen gbgRqZ-jét a CodePen-en.
Megteheti a harmadik szegélyt az :after
álosztály használatával is. Fokozott veszi, hogy a Firefox 3 (pre 3.6) csavarokat ezt fel támogatásával :after
és :before
, de nem teszi lehetővé számukra, hogy abszolút pozicionált (így néz ki, fura).
A vázlat használata
Noha egy kicsit korlátozottabb, mint a határ (a teljes elemet körbejárja bármi is), a körvonal egy extra szabad határ.
.borders ( border: 5px solid blue; outline: 5px solid red; )
A box-shadow használatával
A box-shadow segítségével határhatás érhető el, az árnyék eltolásával és 0 elmosódásával. Ráadásul vesszővel elválasztva az értékekkel annyi „határ” lehet, amennyit csak akar:
.blur ( box-shadow: 0 0 0 10px hsl(0, 0%, 80%), 0 0 0 15px hsl(0, 0%, 90%); )
Lásd Chris Coyier (@chriscoyier) Pen xbgreX-jét a CodePen-en.
Vágott háttér használata
Az elem hátterét megállíthatjuk a kitöltés előtt. Így az elemek normális szegélye bizonyos értelemben kettős szegélynek tűnhet.
.borders ( border: solid 1px #f06d06; padding: 5px; background-clip: content-box; /* support: IE9+ */ background-color: #ccc; )
Egy bemeneten:
Lásd Chris Coyier (@chriscoyier) Pen Double border effektusát a CodePen-en.