ugrás a tartalomhoz

CSS coding: semantic approach in naming convention

Török Gábor · 2008. Nov. 18. (K), 23.02
Azt tükrözze a CSS osztály, hogy mire fogjuk az adott elemet használni
 
1

Ki nem így?

Török Gábor · 2008. Nov. 18. (K), 23.06
Aki már egyszer belefutott a cikkben is említett ügyfél kérésre jobb oldalra úsztatott left-content konténer esetébe, az elég hamar rájön, hogy nem ez a helyes út az osztályok elnevezésére.

Én egy ideje bevált gyakorlatként jellemzően – ha van rá mód – olyan osztályokat használok, amelyekre a HTML5 kínál megfelelő nevű konténer elemet (pl. header, nav, article, footer).

(A posztot yaanno megosztott tartalmai között találtam.)
2

Némiképp keserűen gondolok

yaanno · 2008. Nov. 19. (Sze), 09.24
Némiképp keserűen gondolok erre a cikkre, ugyanis - jóllehet én is azt szeretném, hogy a header az legyen header stb. - mindez standalone weboldalaknál működik jól (már ha működik, és az IE nem szúr ki veled azzal, hogy ha van pl egy header globális változód és ugyanezzel a névvel divként szerepel a dom fában, akkor elfelejtheted a változó értékének módosítását dom betöltődés után).

Abban a pillanatban, hogy az oldalad valamelyik részét egy másik, mondjuk partneroldalba kell ágyazni, főhet a fejed a szemantikus class és id nevek miatt! Erre ugyan megoldást jelenthet időlegesen az, hogy a html és css is template-ezhető és valamilyen konfig fájl alapján kvázi automatikusan prefixelhetőek ezek a nevek. A js azonban még mindig hátra van...

Szóval nem azt mondom, hogy ne használjunk szemantikus (vagy pre-html5) neveket, csak hogy előfordulhat, hogy éppen ez üt vissza.
3

én nem

Edit · 2008. Nov. 19. (Sze), 13.11
Aki már egyszer belefutott a cikkben is említett ügyfél kérésre jobb oldalra úsztatott left-content konténer esetébe,


Miért kell a left-content konténert úsztatni? Annak van egy helye (bal oldalon), ennek megfelelően van beállítva rá a float, padding, esetleg a background, stb. Ha át kell rendezni az oldalt, akkor a left-content konténerből áttesszük a right-content konténerbe a tartalmakat és kész. Egy jól megcsinált, rugalmas HTML sablon nagyszámú konténerrel rendelkezik, és nem a konténereket mozgatjuk, hanem a tartalmi blokkokat tesszük egyik vagy másik konténerbe. (Az üres konténereket pedig nem küldjük ki a böngészőnek, ehhez persze kell szerver oldali program.)
4

A dolog lényege az lenne,

yaanno · 2008. Nov. 19. (Sze), 13.31
A dolog lényege az lenne, hogy kigyomláljuk a template-ből a vizuális utalásokat, így pl. az elem pozícióját (left-sidebar, right-sidebar), színét (my-red-paragraph) stb. és ettől lenne a dokumentum szemantikus.

Az egy másik kérdés szerintem, hogy milyen a jól (rugalamsan stb.) felépített dokumentum.
6

„Miért kell a left-content

Fraki · 2008. Nov. 19. (Sze), 15.06
„Miért kell a left-content konténert úsztatni? Annak van egy helye (bal oldalon), ennek megfelelően van beállítva rá a float

Úgy tűnik, hogy a kérdést magadnak tetted fel.

„Ha át kell rendezni az oldalt, akkor a left-content konténerből áttesszük a right-content konténerbe a tartalmakat és kész. Egy jól megcsinált, rugalmas HTML sablon nagyszámú konténerrel rendelkezik, és nem a konténereket mozgatjuk, hanem a tartalmi blokkokat tesszük egyik vagy másik konténerbe.”

Hát ennél logikusabb a konténert mozgatni.
5

hátö

Dohány Tamás · 2008. Nov. 19. (Sze), 14.13
janóval és mollyval értek egyet, a szemantika attól szemantika hogy az osztálynevek nem utalnak a css property-kre...
7

konténer

Edit · 2008. Nov. 19. (Sze), 15.12
Ha egy elem generic language/style container, akkor számomra az a szemantikus, ha az osztálynév/ID megadja azt a nyelv/stílus szempontot, ami alapján a konténerbe kerülnek az összetartozó dolgok. Egyébként elég zavaros a cikk (mióta strukturális a "red-text", "small-title"?), és nekem az sem világos, hogy minek kellene nevezni a 4-es elemet, ha nem csak a menü van benne, hanem még 5 különféle blokk ("sidebar" ugye nem lehet, mert az már a jobb oldalon foglalt).
8

Mint általános elv, oké, de

Fraki · 2008. Nov. 19. (Sze), 15.35
Mint általános elv, oké, de ez sem szentírás, és nem is mindig keresztülvihető (tehát mondjuk a "gyomlálás" kifejezéssel nem értek egyet). Részletes, cizellált dizájnokon, amelyeken kizárt, hogy egy konténer csak úgy átmenjen a másik oldalra, a legapróbb kis nyilacskákig elég fárasztó munka szemantikát gyártani neki. Egyszerűen mert a dizájn maga a szemantika.

Kicsit olyan, hogy az első kocsinkat (annó) még Dezsőnek hívtuk, a mostani már csak a "zöld autó" (meg van még a megán).

Kicsit tágabb kontextusba is vihető a kérdés. A névadásnak mint olyannak nem mindig van ilyen értelemben "szemantikája". Illetve a név maga lesz a szemantika. Illetve a "szemantikában" releváns részt kaphat a vizuális asszociáció. (Szerk. Teszem azt, "Margó" nevet adnak mondjuk egy publicisztikai rovatnak.) A CSS-nevekben is egy ponton túl már a szimbólum-funkció dominálhat, semmint valamiféle mögöttes leírás. Ilyen szempontból az sem feltétlenül tragédia, ha egy left-column átmegy jobb oldalra. Akkor az ott egy jobbra áttolt left-column.

De mondom, persze, legyen a header header, csak ez a dolog sem gránitsziklába vésett törvény.
9

A CSS korlátozott lehetőségei

Joó Ádám · 2008. Nov. 23. (V), 22.15
Az alapvető hiba a CSS korlátozott lehetőségeiben rejlik. A legtöbb feladatra elég hatékony a CSS kiválasztó rendszere, azonban az ember gyakran szembesül egy teljesértékű programozási nyelvet megkívánó feladattal, pl. aprólékos látvány esetén, ellenkező esetben nem ússza meg szemantikus, vagy legalábbis értelmesen szemantikus HTML-lel. Ezért sem értem, hogy miért tiltakoznak sokan oly hevesen a CSS ilyen irányú bővítésétől.
10

Azért mert az imperatív

tolmi · 2008. Nov. 24. (H), 09.42
Azért mert az imperatív irányba vinné el a CSS-t ami a dolog lényegét ölné meg. Inkább át kellene gondolni hogy mivel lenne érdemes bővíteni a CSS deklaratív eszközkészletét.

Szerk.: Csak kíváncsiságképpen kérdezném hogy mitől teljes értékű egy programnyelv neked?
11

Mindegy

Joó Ádám · 2008. Nov. 28. (P), 02.01
Gyakran érzem úgy, hogy szívesebben állítanám a tulajdonságokat JavaScriptből, épp azért, mert CSS-sel nem tudom indokolható szemantikára támaszkodva kialakítani a látványt. Igen, valóban a kiválasztórendszert kellene bővíteni, de jelentékenyen.