Autor | Zpráva | ||
---|---|---|---|
nethor Profil |
#1 · Zasláno: 7. 9. 2014, 21:06:56
Neexistuje v CSS příkaz pro zdědění všech vlastnosí jiné třidy?
Jde mi o to, že mám třídu "ImgSubForm" s vnořenými elementy a potřebuji založit novou "FileSubForm", která se bude lišit jen v drobnostech. Logicky by se měla jmenovat "FileSubForm", protože již nejde o foto, ale připadá mi zbytečné ji kopírovat a přepisovat nebo psát dědění pro každou vlastnost zvlášť. .ImgSubForm input.Alt { width: 330px; margin: 0 10px 0 0 ; } .ImgSubForm .select { margin: 0 15px 0 0 ; } /*FileSubForm */ .FileSubForm input.Alt { width: inherit; margin: inherit ; } .FileSubForm .select { margin: inherit ; } |
||
joe Profil |
Přímo dědění v samotném CSS není, můžeš ale napsat řádky
.ImgSubForm input.Alt , .FileSubForm input.Alt {
Pak se ale kód stává nepřehledným. Vhodné by bylo použít jeden z preprocesorů - Sass, Stylus a nebo Less, které dědičnost umí. |
||
DJ Miky Profil |
#3 · Zasláno: 7. 9. 2014, 21:54:23
Přehlednější by bylo vyčlenit společné vlastnosti do zvláštní třídy (jakoby nadtřídy), např.
SubForm , a třídy ImgSubForm a FileSubForm použít jen pro specifické/odlišné vlastnosti. Pak by se v HTML použilo class="SubForm ImgSubForm" , případně class="SubForm FileSubForm" .
|
||
nethor Profil |
#4 · Zasláno: 7. 9. 2014, 22:24:38
DJ Miky:
Jo jasně, to je správná cesta. Díky všem. |
||
Časová prodleva: 10 let
|
0