Rendezett CSS
Sziasztok!
Olyan kérdésem van hogy ki hogyan építi fel és rendezi a CSS fájlját (fájlait)?
Azért kérdezem mert most megláttam egy 8 éves munkám és elképedtem hogy milyen rosszul volt felépítve, olvashatatlan volt és logikátlan (legalábbis mai fejjel) és elbizonytalanodtam hogy újabb 8 év után hogy fogok visszatekinteni a mai állapotra.
Próbáltam a témában keresgélni, de igazából nem találtam olyan ajálásokat mint például a html-nél van (html,head,body), talán a legjobb ez volt: https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started/Readable_CSS de itt is csak különböző technikákat mutatja be, de nem konkrét ajánlást.
Én ezt a "verziót" használom:És úgy tagolom a css fájlon belül hogy:Most például ezt néztem hogy sok oldalnak a css fájljában egy például p elemen belül abc sorrendben vannak a tulajdonságok (míg én például "fontossági" sorrendbe rakom ami mondjuk elég szubjektív):Szóval akinek csak van kedve írja ide hogy ő hogyan csinálja vagy hogyan javasolja mert most ez nagyon érdekel hogy erre miért nincs egy "szabvány".
■ Olyan kérdésem van hogy ki hogyan építi fel és rendezi a CSS fájlját (fájlait)?
Azért kérdezem mert most megláttam egy 8 éves munkám és elképedtem hogy milyen rosszul volt felépítve, olvashatatlan volt és logikátlan (legalábbis mai fejjel) és elbizonytalanodtam hogy újabb 8 év után hogy fogok visszatekinteni a mai állapotra.
Próbáltam a témában keresgélni, de igazából nem találtam olyan ajálásokat mint például a html-nél van (html,head,body), talán a legjobb ez volt: https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started/Readable_CSS de itt is csak különböző technikákat mutatja be, de nem konkrét ajánlást.
Én ezt a "verziót" használom:
p.valami {
width: 50px;
height: 50px;
color: black;
}
/*- GLOBÁLIS ÉRTÉKEK -*/
body {
}
img {
}
a {
}
p {
}
h1 {
}
/*- STRUKTÚRA -*/
div.fejlec {
}
div.tartalom {
}
div.tartalom.baloldal {
}
div.tartalom.jobboldal {
}
div.lablec {
}
div.lablec.oldalterkep {
}
/*- FEJLEC DIVEN BELÜLI ELEMEK -*/
a.menulinkek {
}
/*- TARTALOM DIVEN BELÜLI ELEMEK -*/
p.tartalom {
}
a.tartalom {
}
h1.tartalom {
}
/*- LABLEC DIVEN BELÜLI ELEMEK -*/
h1.lablec {
}
a.lablec {
}
p {
color: black;
height: 20px;
margin: 5px;
width: 10px;
}
Rendezettség
A példakódoddal több problémát is látok: felesleges definiálni egy class-ra, hogy az div, ha ez szükséges akkor logikailag hibás a kód; egy HTML oldalon nem ajánlott több h1-es elem, a HTML5 óta a lehetőség meg van rá, de a Google nem igazán szereti. Elég furcsa ez a megoldás nálad, hogy nem a parentek alapján állítod a stílust az adott elemen felüli tageken, hanem a tag kap egy extra class-t, hogy mi a parentje... Egyébként manapság nem ajánlott a tag-ek szerinti szelektor használata, hanem minden class (lásd OOCSS/BEM stb.), hogy ne legyen precendencia és teljesítmény probléma, mondjuk ezt én sem tartom be mint a mintakódban láthatod. :D
Class
A másik hogy parentek alapján állítom például a p.tartalom elöl még hiányzik hogy div.tartalom (ami amúgy meg #tartalom szokott lenni), de mondom ezt csak tagoltság miatt írtam.
Ami viszont érdekesebb, hogy akkor elvileg mindehol class-t kell használni?
Maradva akkor a mostani példánál: #tartalom p { } helyett, #tartalom p.elso { } kell legyen?
Ahány fejlesztő, annyi
Én egyszemélyes vagyok, így próbálok valami standardet, best-practice-t követni (Enduring CSS) többé-kevésbé (de inkább kevésbé) személyre szabva., kézműves (sic!) CSS módszerrel.
Például így.
Ez persze elég Sublime-specifikus, mert van ilyen preview scrollbar oldalt.
Sublime
Feltéve, hogy használsz