Alsmink készítése ZEN alá Drupal 7-ben

blackzoli képe

Sziasztok!

Drupal 7 alatt szeretnék készíteni egy egyedi kinézettel rendelkező oldalt, ezért egy alsminket készítek.
Amiket eddig megvalósítottam:
- ZEN letöltés, telepítés
- STARTERKIT átmásolás, átnevezés, info file beállítása
- template.php és theme-settings.php fileokban STARTERTKIT szó átnevezése összes előfordulásánál
- a kinézet módosításához a layout-fixed.css és pages.css fileokat használtam, ezekben módosítottam, és ezekbe vittem fel új elemeket is
- szükségem volt pár új div-re, ezért a zen/templates mappából átmásoltam a page.tpl.php file-t az alsminkem templates mappájába
- ezt követően létrehoztam ebben a file-ban a div-eket, és a hozzájuk tartozó css osztályt a layout-fixed.css file-ba tettem

A következő kérdéseim lennének ezzel kapcsolatban:
- Jól e ez így, ahogy leírtam? Így szokták-e ezt csinálni?
- Ha az eredeti STARTERKIT mappában van olyan css amit nem használok kitörölhetem e magát a css file-t és a hivatkozást az info fileból?
- Ha egy css osztály több helyen is szerepel pl body, page... akkor azt melyik css file-ban szerkesszem? Pl. a body szerepel a layout-fixed.css-ben is és a pages.css-ben is?

A véleményetekre lennék kíváncsi a felsoroltakkal kapcsolatban.
Segítségeteket előre is köszönöm.

Üdv
Zoli

Drupal verzió: 
Fórum: 
simont képe

6-os Drupálban szerkesztettem alsminkeket Zen alá. Amit leírtál, az a helyén van, szerintem, 6-osban működik a leírtak szerint. A CSS-t, amit nem használsz, azt törölheted, és az .info fájlból is eltávolíthatod. Én azt csináltam, hogy létrehoztam egy új css-t, "sajatweboldalnev.css" névvel. Az info fájlba is beírtam, utolsónak. a print.css elé, és ezután csak ezt szerkesztettem.
..............
stylesheets[all][] = css/forms.css
stylesheets[all][] = css/fields.css
stylesheets[all][] = css/sajatweboldalnev.css
stylesheets[print][] = css/print.css
; stylesheets[handheld][] = css/mobile.css
.................
Ha utolsónak teszed be, felülírja az összes többi css-t.
Nem tudom hogy ez szabályos-e így, de működik.
Mozilla Firefox - Firebug kiegészítő megkönnyíti a dolgod.

0
0

SimonT

blackzoli képe

Szia!

Köszönöm a választ.
Firebug-al vagy a Chrome elem kivizsgáló eszközével természetesen ki fogom deríteni, hogy mi az amit használ, és mi az amit nem.
Ami miatt írtam, az inkább az, hogy elviekben jól csinálom e a dolgot?
A válaszod alapján megnyugodtam, és folytatom a munkát.

Köszönöm a segítséget!
Üdv
Zoli

0
0
szantog képe

"A következő kérdéseim lennének ezzel kapcsolatban:"
- Jól e ez így, ahogy leírtam? Így szokták-e ezt csinálni?

Abszolút!

- Ha az eredeti STARTERKIT mappában van olyan css amit nem használok kitörölhetem e magát a css file-t és a hivatkozást az info fileból?

Ez egy tök jó kérdés, próbáld ki, mert én is kíváncsi vagyok, a css-ek öröklése D7 alsminkeknél nem épp a legtriviálisabb dolog, sztem másnak is tanulságos lehet.

1. Küldj be egy node-ot, ami nem publikus.
2. Keresd meg firebugban azt a divet, hogy .node-unpublished, nézd meg firebugban, hogy az ehhez felsorolt deklarációk melyik fáljból jönnek. 99%, hogy a sites/all/themes/tesminked/css/node.cssből.
3. Nevezd át a node.css-t node1.css, majd theme_registry ürítés
4. Töltsd újra a nem publikus nodeodat.

Ha tök ugyanúgy néz ki, mint korábban, akkor csekkold le, mint az előbb, hogy melyik fálból jön a css rule. Ha ez /sites/all/themes/zen/css, akkor megörökli az anyasmink css-ét.

Amúgy 90%, hogy nem fogja. Ha a smink .info fáljában csak egy styles.css van beírva, sztem csak azt fogja behúzni, mindegy, hogy az anyasminkben mi van.

Ebből következik, hogy nem biztos, hogy ki kéne törölni.
A zen a saját függvényein keresztül gyúrja a html-t, ehhez vannak igazítva a css-ek is. Azért írtam pont ezt a nem publikus node megjelenését, mert pont ez az, amit maga a zen állít elő, tehát hogy a háttérben az unpublished szöveg megfelelően jelenjen meg.

Ha kitörlöd a többi css-t, éppen ezek a zen specifikus dolgok fognak elromlani, amivel végülis nagy gáz nincsen, mert csak css, dehát miért szivassa magát az ember.

- Ha egy css osztály több helyen is szerepel pl body, page... akkor azt melyik css file-ban szerkesszem? Pl. a body szerepel a layout-fixed.css-ben is és a pages.css-ben is?

Minden fálj elején bő lére eresztett dokumentáció van. Mindettől függetlenül zsír mindegy. A layout-fixed-be valami olyasmi van, hogy csak width, height, margin, stb cuccokat _illik_ használni. Ha ebben állítasz pl háttereket, csak annyi bajod lehet belőle, hogy hangosan csuklani fogsz, amikor valaki más nézi meg a kódodat.
Amik ott vannak, nem szabályok, inkább ajánlások. Ha a fejléc magasságát akarod állítani, akkor inkább a layout.css-be, mint a pages.css-be, ha meg pl a font-colort, akkor meg épp fordítva.

0
-1

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

aboros képe

"Amúgy 90%, hogy nem fogja. Ha a smink .info fáljában csak egy styles.css van beírva, sztem csak azt fogja behúzni, mindegy, hogy az anyasminkben mi van."

dehogyis!
minden css öröklődik, ami a gyerek infojába nincs újradefiniálva. legalább egy csst definiálnod kell a gyerekben. lásd öröklődési szabályokat: http://drupal.org/node/225125

nyugodtan kitörölhetsz midnen csst és elég egy sajatsminkem.css is, amennyiben csak az van az info fileban.

0
0

-
clear: both;