PDA

Zobacz pełną wersję : Wyrównanie tekstu w kolumnie



Jdwind
25-12-2007, 15:32
Witam, testuję sobie lokalnie Joomla! 1.5 RC4 z templatką rhuk_milkyway. Chodzi mi o wyśrodkowanie tekstu w niektórych modułach umieszczonych w prawej kolumnie templatki. Czy może mi ktoś łopatologicznie wytłumaczyć, czy mam w kodzie pliku index.php umieścić nowy element div ( jeśli tak, to w którym miejscu) a następnie w nim ten moduł czy inaczej to zrobić? Wiem, że to podstawy tworzenia templatek, ale mam problem ze zrozumieniem tego. Nie potrafię do końca załapać, w którym miejscu wsadzać <div>'y. Mam tą samą templatkę dla Joomla! 1.0x i też ten sam problem. Wiem, że zmiany mogę wprowadzić w sekcji #whitebox, ale są to zmiany dla wielu elementów na stronie. Dalej poległem i będę wdzięczny za pomoc.

EDIT:
W sumie, to zrobiłem tak:
Po sekcji
<?php mosLoadModules ( 'right', -2 ); ?> wstawiłem:
<table class="prawa" cellpadding="0" cellspacing="0" align="center">
<tr valign="top">
<td width="170">
<?php mosLoadModules ( 'prawy', -2 ); ?>
</td>
</tr>
</table>

I teraz zdefiniuję właściwości w stylach dla klasy .prawa, i mam nadzieję, że to dobrze zrobiłem. Zobaczę co mi wyjdzie :D.

EDIT-II
Ponieważ są Święta, nie powiem co mi wyszło :/ Najzwyczajniej w świecie nie wiem, jak zdefiniować sekcję (w prawej kolumnie), w którym umieszczę jakiś moduł z tekstem i wyrównam ten tekst np. do środka. Przedszkole się kłania zapewne...

EDIT III:
w sumie to jednak dobrze zrobiłem, jedynie co mam moduł "gościmy", który nie zmienia swojej pozycji (a właściwie jego tekst), nie wiem dlaczego. Pozostałe umieszczone w sekcji 'prawy' zachowują się dobrze. I walidację to to przechodzi ;).

EDIT IV:
I wszystko byłoby pięknie, bo lokalnie działa (text-align: center;). Ale na serwerze ani drgnie... Zaparło się.
P.S.
nastęny edit napiszę już tylko w przypadku mojego oświecenia, czyli jak rozwiążę problem. Obiecuję ;)

Jdwind
26-12-2007, 10:59
Poległem.. proszę, jeżeli możecie wytłumaczcie mi, co źle robię. Kod, który wklejam do pliku index.php to:


<?php if(mosCountModules('left')) { ?>
<td class="greyline">&nbsp;</td>
<td width="170">
<?php mosLoadModules ('right', -2); ?>
<table class="prawa" cellpadding="0" cellspacing="0" align="center">
<tr valign="top">
<?php mosLoadModules ('prawy', -2); ?>
</tr>
</table>
</td>
<?php } ?>Pozycję mam dodaną w templatce. Link tutaj (http://www.fotosik.pl/pokaz_obrazek/7a16af63073dce8f.html). W stylach dodałem:
table.prawa{
text-align: center;}
I lokalnie, na Krasnalu ładnie mi to działa. Na serwerze nic, ani drgnie. Co ja źle robię?

Jdwind
27-12-2007, 03:47
No wreszcie, udało mi się!! Tylko się nie śmiejcie ze mnie ;). Może komuś się przyda, jeżeli będzie używał templatki rhuk_milkyway.
Pierwotnie było tak:
#whitebox {
margin: 0 21px 0px 21px;
background: #fff;
width: auto;
}
#whitebox div {
text-align: left;
}

Zamieniłem to na:
#whitebox {
margin: 0 21px 0px 21px;
background: #fff;
width: auto;
text-align: left;
}
#whitebox div {

}

W pliku index.php zmieniłem table na div (co jest zalecane, choć to w tym przypadku ma drugorzędne znaczenie). Wygląda więc to tak:

<div class="prawa">
<?php mosLoadModules ('prawy', -2); ?>
</div>

No i w pliku css templatki zadeklarowałem takie wartości jak margin, padding, text-align i wreszcie mam wyrównanie takie, jakie chciałem w prawej kolumnie. Uff..