A tartalom - kinézet - viselkedés nem mindig különíthető el egyértelműen.
Szerintem az, hogy egy adott esemény bekövetkeztekor hogyan nézzen ki az elem pontosan a CSS hatáskörébe tartozik.
Az hogy eseményeket definiáljunk arra való a javascript.
Én nem hogy kivonnám az eseményeket a CSS-ből hanem kibővíteném azzal, hogy egy JavaScriptben definiált eseményhez is lehessen kinézetet definiálni.
Pl: Képzeljünk el egy hierarchikus, kinyiló menüt ami fájl kezelőknél szokott lenni. Definiáljunk JavaScriptben egy olyan eseményt, hogy amikor rákattintunk egy könyvtárra akkor az kinyillik, becsuküdik. Ennek megfelően az elem :open :closed pszeudo osztályokat kaphatná.
de sajnos muszáj elkülönítve kezelni őket, mert nincs arra garancia, hogy ha JS van, akkor van CSS is, illetve fordítva.
például ha az ember javascripttel akar show-hide viselkedést megvalósítani (mint a te példádban), érdemes nem CSS tulajdonságokat állítani, hanem memóriában tartani a node-okat, s replaceChild-dal játszadozni
adott eseménynél kinézet
Szerintem az, hogy egy adott esemény bekövetkeztekor hogyan nézzen ki az elem pontosan a CSS hatáskörébe tartozik.
Az hogy eseményeket definiáljunk arra való a javascript.
Én nem hogy kivonnám az eseményeket a CSS-ből hanem kibővíteném azzal, hogy egy JavaScriptben definiált eseményhez is lehessen kinézetet definiálni.
Pl: Képzeljünk el egy hierarchikus, kinyiló menüt ami fájl kezelőknél szokott lenni. Definiáljunk JavaScriptben egy olyan eseményt, hogy amikor rákattintunk egy könyvtárra akkor az kinyillik, becsuküdik. Ennek megfelően az elem :open :closed pszeudo osztályokat kaphatná.
Ehhez CSS-ben rendelhetnénk:
Nem rossz
tartalom - kinézet - viselkedés
például ha az ember javascripttel akar show-hide viselkedést megvalósítani (mint a te példádban), érdemes nem CSS tulajdonságokat állítani, hanem memóriában tartani a node-okat, s replaceChild-dal játszadozni