Earl Miles egy a negyedik napon üresnek látszó előadás helyre a barcelonai konferencia harmadik napján nyújtott be előadás javaslatot, és ahhoz képest, hogy a programban eredetileg nem szerepelt, rendkívül komoly részvétellel zajlott az előadás. A figyelemre való tekintettel Earl úgy döntött, hogy egy Drupal Dojo bemutatóként is átadja az információkat, ezért a múlt héten meg is tartotta előadásának ismétlését ezúttal képernyő rögzítéssel. A Drupal Dojo felvétele elérhető a http://drupaldojo.com/lesson/new-stuff-in-drupal-6-theming címen (sok más korábbi felvétel mellett). A Drupal 6-ban végre lehetővé vállt, hogy mindenféle PHP smink tudás nélkül, csupán CSS sminkeket készíthessünk a Drupal alap HTML kódjára építve. Egy ilyen smink látható a http://colorovfire.com/ címen.
Hozzászólások
alakul...
Erre eddig is volt lehetőség, bármelyik meglévő smink CSS fájljainak módosításával. A CSS designereket az riasztja el – és a profi themereket az idegesíti –, hogy nem kapnak szabad kezet a CSS struktúra kialakításakor. Mindenkinek megvan a kedvenc módszere arra, hogy hogyan rétegezze egymásra a stíluslapokat úgy, hogy a kód egyszerűen fejleszthető és karbantartható legyen:
Én a következő módszert használom:
Ezzel szemben a Drupal rákényszerít arra, hogy modulok szerint szervezzük a stíluslapokat:
Első ránézésre van benne logika, csak aki napi 8 órában CSS-szel foglalkozik, az tudja, hogy egy ilyen módon szervezett CSS megírása és karbantartása dupla munkát jelent.
Az egyetlen ésszerű munkamódszer az, hogy első körben lenullázzuk a böngészőket, utána pedig valamilyen logika szerint az általánostól (p, a, blockquote) haladunk a specifikus (#wrapper #container .sidebar .block p) felé.
Az pedig, hogy ki milyen logika szerint szeret dolgozni, egyénileg eltérő. A lényeg, hogy a fenti, általános -> specifikus irányba menjen, akkor 5 perc alatt kiigazodom egy másik tervező fájljaiban.
Ha jól értem, a Drupal 6-ban annyival lesz jobb a helyzet a mostaninál, hogy például a Drupal által adott system.css-t lecserélhetem a sajátomra, nem kell a felülírni. Ez egy félmegoldás, én biztos nem fogom használni. Maradok a régi jól bevált gányolásnál, és a page.tpl.php-ben kikapcsolom az összes beépített stíluslapot.
Az egyébként nagyszerű, hogy a template fájlok (.tpl.php) nagyobb figyelmet kapnak és könnyebben kezelhetővé válnak.
browser-reset.css
Ez a "lenullázás" érdekelne. Hogyan lehet ezt megcsinálni a legegyszerűbben?
Köszi, Pali
Ps.: valami hasonlóra kell gondolni?
http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
--
Palócz Paal Pál, a drupal.hu admin csoportjának tagja
Ajánlott olvasmány: Eric Steven Raymond - Hogyan kérdezzünk okosan
Pontosan
Az egész arról szól, hogy a különböző böngészők különböző alapbeállításait egységesítsük (pl. img tag-nek a padding-jét egységesen 0-ra állítsuk). Semmi másról.
A legegyszerűbb pedig ha egy előre elkészített CSS-t betöltesz. :) Pontosan ahogy írod.
--
Tolmács Márk
Drupal bandita
igen
Igen, ezt használom.
eddig nem volt
Nem egészen. Ha egy meglévő sminkhez készítettél leszármazott sminket, akkor ott lehetett csak stíluslapot használni. A Drupalhoz magához nem lehetett csak CSS stíluslapot adni, mert page.tpl.php-t várt, hogy az alap phptemplate sablonokat használja, vagy .theme fájlt, hogy annak sminkjét használja.
Ami a CSS szervezést illeti, nem kell a page.tpl.php-ben gányolni, mert az .info fájlból felülírhatóak a rendszer és modulok CSS fájljai saját stíluslapokkal. Ha ezek a stíluslapok nem léteznek, vagy üresek, akkor olyan, mintha törölted volna azokat a stíluslapokat. Ugyanígy az .info fájlból adhatsz hozzá saját CSS-t, amit úgy szervezel, ahogy akarsz. (Magyarul végülis a csak CSS alapú smink azzal együtt értendő, hogy .info fájlok azért kellenek :)
üres stíluslapok?
Igen, erre gondoltam.
Ha nem léteznek, akkor gondolom a Drupal teleírja a rendszernaplót hibaüzenetekkel (most nem tudom kipróbálni, de este megnézem).
Ha üres fájlokat töltök fel – mondjuk bekapcsolom az összes core modult, meg telepítek hozzá még egy pár kiegészítőt, máris 10-12 üres stíluslapot kell kerülgetnem a sminkmappában. Hát, ízlés dolga...
Akit érdekel a téma:
Én továbbra is nagyon várom a Drupal 7-et :)
Drupal 7?
Szerintem nem írja tele, maximum több file_exists() hívás fut majd. Végülis úgyis CSS aggregációt használsz, ha könnyíteni akarod a szerver dolgát, akkor pedig teljesen mindegy, hogy mennyi nem létező CSS volt.
Biztos érdemes. De az első link, amit küldtél Drupal 6-ban benne van, a második pedig az első duplikátumaként van most megjelölve (bár én ezzel nem értenék egyet, de ez van).
korrekt megoldás
Tényleg nem írja. :) Régebben, talán még a 4.7-es, 4.6-os időkben volt olyan, hogy ha nem találta a style.css-t, akkor hagyott egy hibaüzenetet a logban.
Akkor ez így egy teljesen korrekt megoldásnak tűnik – mindenesetre sokkal szebb, mint láncfűrésszel hadonászni a page.tpl.php-ben. Köszi az infót. :)
buzz keltés
Egy sima CSS alapú új smink: http://jeff.viapositiva.net/node/539
a smink éve
Úgy látszik sikerült egy hatalmas akadályt elhárítani a Drupal útjából ;)
Tenger smink fog itt folyni kéremszépen!
hazaértem kipróbálom ;)
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
vakvagyok...
vagy csak lassú ;)))
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
jobb, mint vártam
Kipróbáltam, és sokkal jobb, mint amire számítottam. Bár nem tudni, Earl Miles mennyi munkát tett bele...
Ahogy várható volt, sok helyen nem illeszkednek pixelpontosan a dolgok, kiegészítő modulok bekapcsolása után elég hamar elkezd az oldal erodálódni... Összetettebb honlap esetén kb. a munkának a 20-30 százaléka spórolható meg ezzel a módszerrel, úgyhogy szerintem még egy ideig nem fognak a Drupal themerek éhenhalni ;)
A fő gondot az jelentheti, hogy az ilyen ingyenes template-ekhez általában nem adják oda a grafikai forrást, tehát a látvány színvonalas, pontos adaptálása időnként elég nehézkes, ha nem lehetetlen.
CSS kiválasztók?
Kérdezek egy olyat, amely biztos mindenkinek triviális, csak nekem nem az... előre is elnézést érte.
Egy pusztán CSS alapú sminknél (vagyis ahol nincs semmilyen .tpl.php fájl) honnan lehet tudni, hogy milyen CSS kiválasztókat és osztályokat lehet használni az egyes tartalomrészek formázására?
Mert míg pl. a Garland sminkben ott van az a rész page.tpl.php fájlban, hogy
<div id="header">
, addig egy olyan sminkben, amely nem használ template fájlokat, ilyen nincs megadva sehol... vagy tévedek, esetleg rosszul értelmezem az egészet?Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
system modul mappában
A page.tpl.php átköltözött a system modul mappájába. Ha a Drupal nem talál a sminkben page template-et, akkor azzal dolgozik.
Hasonlóképpen, a node.tpl.php a node modul mappájában van, stb.
utánanéztem, és így már értem
Köszönöm a választ!
Utánanéztem (egybevetettem a Drupal 5 és a Drupal 6 adott könyvtárait), és így a hozzászólásod alapján már értem, hogyan működik egy ilyen "csak CSS -t" használó smink.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés