Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

CSS - problem z centrowaniem tekstu w tabeli

0 views
Skip to first unread message

Marek

unread,
Dec 16, 2009, 5:25:41 AM12/16/09
to
Witam,

Zrobi�em sobie tabelk� w postaci:
<table>
<colgroup>
<col style="text-align:center">
<col>
<col style="text-align:right; font-weight:bold; width: 150px">
</colgroup>
<tr>
<th>xxx</th>
<th>yyy</th>
<th>zzz</th>
</tr>
<tr>
<td>aaa</td>
<td>bbb</td>
<td>ccc</td>
</tr>
</table>

oraz style:

table {
border-collapse:collapse;
}
td {
vertical-align:top;
padding: 0px;
}
th {
padding: 0px 0px 0px 0px;
vertical-align:top;
}

Czy kto� m�g�by mi powiedzie� dlaczego w <col> dzia�aj� tylko niekt�re
style? Nie dzia�a text-align, nie dzia�a boldowanie, ale szeroko�� kolumny
jest ustawiana. Pr�bowa�em te� zamiast CSS u�y� <col align="center"> i
r�wnie� nie dzia�a. Sprawdza�em pod IE8 i FF.

Marek

unread,
Dec 16, 2009, 5:55:28 AM12/16/09
to
P.S.
Nag��wek dokumentu HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

Krzysztof Warunek

unread,
Dec 16, 2009, 9:03:15 AM12/16/09
to
W dniu 2009-12-16 11:25, Marek pisze:

> Czy kto� m�g�by mi powiedzie� dlaczego w <col> dzia�aj� tylko niekt�re
> style? Nie dzia�a text-align, nie dzia�a boldowanie, ale szeroko��
> kolumny jest ustawiana. Pr�bowa�em te� zamiast CSS u�y� <col
> align="center"> i r�wnie� nie dzia�a. Sprawdza�em pod IE8 i FF.
IE6 potrafi to obs�u�y�, inne nie - bo taka jest specyfikacja.

"The following properties apply to column and column-group elements:
-border [cut]
-background [cut]
-width [cut]
-visiblity [cut]"

http://www.w3.org/TR/CSS21/tables.html#q4

<col> in IE6
http://ln.hixie.ch/?start=1070385285&count=1

--
Krzysztof Warunek

http://tocheckserver.pl

Marek

unread,
Dec 16, 2009, 9:25:22 AM12/16/09
to
> "The following properties apply to column and column-group elements:
> -border [cut]
> -background [cut]
> -width [cut]
> -visiblity [cut]"

A tak, czyta�em w opisie <col> zamiast w <table>. Ju� tylko proforma spytam:
nie ma innego sposobu jak tylko stosowanie klas do poszczeg�lych <td> w celu
okre�lenia sposobu wyr�wnywania tekstu w kom�rkach? Np. chcia�bym aby
pierwsza kom�rka mia�a tekst do lewej, kolejna - centrowany, trzecia -
jeszcze inny wariant itd. D��y�em do tego aby przy du�ych tabelach unikn��
konieczno�ci powielania tych samych element�w kodu HTML/CSS dla ka�dego
wiersza.

Mirosław Zalewski

unread,
Dec 16, 2009, 9:45:49 AM12/16/09
to
grudzień roku pamiętnego 2009, prawdopodobnie 16. Wielka mądrość na
czytelników pl.comp.www spłynęła, gdy tako rzekł(a) Marek:

> Już tylko proforma spytam:
> nie ma innego sposobu jak tylko stosowanie klas do poszczególych <td>
> w celu określenia sposobu wyrównywania tekstu w komórkach?

Wydaje mi się że pseudoklasa :nth-of-type (lub :nth-child) wprowadzona
przez CSS3 rozwiąże problem, ale powszechna obsługa tych selektorów
jest jeszcze mniej czy bardziej powszechną przyszłością.
--
Niżej podpisany, zamieszkały w http://minio.xt.pl ,
Mirosław Zalewski

Marek

unread,
Dec 16, 2009, 12:18:10 PM12/16/09
to
>Wydaje mi się że pseudoklasa :nth-of-type (lub :nth-child) wprowadzona
>przez CSS3 rozwiąże problem, ale powszechna obsługa tych selektorów
>jest jeszcze mniej czy bardziej powszechną przyszłością.

Tak, to bardzo futurystyczna wizja. No cóż, tym czasem naładuję mnóstwo kodu
w stronę WWW, trudno się mówi :-) Dziękuję za sprowadzenie mnie na ziemie
wszystkim.

Mirosław Zalewski

unread,
Dec 16, 2009, 12:39:31 PM12/16/09
to
grudzień roku pamiętnego 2009, prawdopodobnie 16. Wielka mądrość na
czytelników pl.comp.www spłynęła, gdy tako rzekł(a) Mirosław Zalewski:

> grudzień roku pamiętnego 2009, prawdopodobnie 16. Wielka mądrość na
> czytelników pl.comp.www spłynęła, gdy tako rzekł(a) Marek:
>
> > Już tylko proforma spytam:
> > nie ma innego sposobu jak tylko stosowanie klas do poszczególych
> > <td> w celu określenia sposobu wyrównywania tekstu w komórkach?
>
> Wydaje mi się że pseudoklasa :nth-of-type (lub :nth-child) wprowadzona
> przez CSS3 rozwiąże problem, ale powszechna obsługa tych selektorów
> jest jeszcze mniej czy bardziej powszechną przyszłością.

^^^^^^^^^^
Chodziło oczywiście o słowo „odległą”. Nie wiem o czym myślałem jak
pisałem post.

(Dopiero teraz zauważyłem.)

Marek

unread,
Dec 16, 2009, 2:23:50 PM12/16/09
to
>Chodziło oczywiście o słowo „odległą”. Nie wiem o czym myślałem jak
>pisałem post.

Wiem wiem ... domyśliłem się co miałeś na myśli :-)

Krzysztof Warunek

unread,
Dec 16, 2009, 4:12:13 PM12/16/09
to
W dniu 2009-12-16 18:39, Mirosław Zalewski pisze:

>> Wydaje mi się że pseudoklasa :nth-of-type (lub :nth-child) wprowadzona
>> przez CSS3 rozwiąże problem, ale powszechna obsługa tych selektorów
>> jest jeszcze mniej czy bardziej powszechną przyszłością.
> ^^^^^^^^^^
> Chodziło oczywiście o słowo „odległą”. Nie wiem o czym myślałem jak
> pisałem post.
przesadzasz.

:nth-child(), :nth-of-type()
obsługuje FF3.1+,Safari3.1+,Chrome1+,Opera10+,Konqueror3.4
czyli wszystkie z nowym Gecko,KHTML,Presto,Webkitem

Odstaje tylko iCab i IE (też nie całkiem, bo ten na Tasmanie
obsługuje w części).

Do tego przekupy piszą:
http://www.css3.info/microsoft-announces-css3-support-for-internet-explorer-9-ie9/

Czyli nie jest źle, a tylko demonizujecie sytuacje.

Paweł Piskorz

unread,
Dec 16, 2009, 5:03:05 PM12/16/09
to
On 2009-12-16 15:45, Mirosław Zalewski wrote:
> grudzień roku pamiętnego 2009, prawdopodobnie 16. Wielka mądrość na
> czytelników pl.comp.www spłynęła, gdy tako rzekł(a) Marek:
>
>> Już tylko proforma spytam:
>> nie ma innego sposobu jak tylko stosowanie klas do poszczególych<td>
>> w celu określenia sposobu wyrównywania tekstu w komórkach?
>
> Wydaje mi się że pseudoklasa :nth-of-type (lub :nth-child) wprowadzona
> przez CSS3 rozwiąże problem, ale powszechna obsługa tych selektorów
> jest jeszcze mniej czy bardziej powszechną przyszłością.

Selektor sąsiada działa już od badzIEwia 7. Dorzuć pseudoklasę
:first-child i masz:
td:first-child { pierwsza komórka }
td:first-child + td { druga komórka }
td:first-child + td + td { trzecia komórka }
Na 3 kolumnową tabelę w sam raz.
BadzIEw 6 można olewać, ale jak komuś zależy to
http://dean.edwards.name/ie7/ lub proste expression i dublowanie
deklaracji stylów dla komórek.

Marek

unread,
Dec 16, 2009, 5:50:14 PM12/16/09
to
> Selektor sąsiada działa już od badzIEwia 7. Dorzuć pseudoklasę
> :first-child i masz:
> td:first-child { pierwsza komórka }
> td:first-child + td { druga komórka }
> td:first-child + td + td { trzecia komórka }
> Na 3 kolumnową tabelę w sam raz.

Super! Sprawdzę to - w moim przypadku powinno to wystarczyć. Dziękuję :)

0 new messages