HTML zaawansowane możliwości tabel 05 2006

background image

HTML

W

poprzedniej części kursu nauczyliśmy się tworzyć oraz

formatować tabele. Mimo, że zdobyta wiedza wydaje się

obszerna, nie jest jeszcze pełna. Od HTML-a 4.0 dostępnych jest

kilka nowych możliwości, które przedstawimy w tej części kursu.

Tabele są jednymi z najbardziej zaawansowanych i najbardziej

złożonych bloków HTML. Warto jednak poświęcić nieco czasu na

poznanie ich budowy, gdyż są elementem często wykorzystywa-

nym na stronach.

Grupowanie kolumn

Kolumny tabel można grupować, co ułatwia łatwiejsze ich formato-

wanie, np. za pomocą stylów. Do grupowania kolumn wykorzystuje

się znacznik <colgroup>. Można mu przekazać sześć atrybutów:

4

align – sposób wyrównania danych w kolumnie,

4

char – definiuje znak, według którego dane mają być wyrów-

nywane,

4

charoff – przesunięcie do pierwszego znaku, według które-

go będzie wyrównywana zawartość komórek,

4

span – liczba kolumn w grupie,

4

valign – wyrównanie zawartości komórki w pionie,

4

width – szerokość kolumny jako liczba pikseli lub wartość

procentowa.

Atrybut

align

może przyjmować wartości:

4

left – wyrównanie zawartości komórki do lewej,

4

right – wyrównanie zawartości komórki do prawej,

4

center – wyrównanie zawartości komórki do środka,

4

justify – wyrównanie zawartości do obu brzegów komórki,

4

char – wyrównanie wg znaku podanego w atrybucie

char

.

Atrybut

valign

może przyjąć jedną z wartości:

4

top – wyrównanie w pionie do góry komórki,

4

middle – wyrównanie w pionie do środka komórki,

4

bottom – wyrównanie w pionie do dołu komórki,

4

baseline – wyrównanie do linii bazowej (zob. rys. 1).

Bardzo ciekawa wyda-

wać się może opcja wyrów-

nania tekstu w stosunku do

pewnego znaku. Wyobraź-

my sobie sytuację, gdy w tabeli prezentujemy pewne informacje licz-

bowe. Liczby te to ułamki, w których znakiem rozdzielającym część

całkowitą od ułamkowej jest przecinek (,). Niewątpliwie bardzo ład-

nie wyglądałaby tabela, jeśli wyrównalibyśmy taką kolumnę według

znaku przecinka. Niestety, przeglądarki wciąż nie obsługują tego a-

trybutu. Ale prawdopodobnie to tylko kwestia czasu, więc warto już

dziś wiedzieć, że taka możliwość została przewidziana.

Najważniejszym atrybutem znacznika <colgroup> jest

span

. A-

trybut ten określa liczbę kolumn, które mają zostać zgrupowane.

Jeśli chcemy utworzyć większą liczbę grup, każdy znacznik <col-

group> będzie dotyczyć kolejnych kolumn. Zobaczmy przykład:

<table border=”1”>

<colgroup span=”1” style=”background-color:

Ã

silver;” align=”left”/>
<colgroup span=”2” style=”background-color:

Ã

#eee;” align=”center”/>
<tr>

<th>Lp.</th> <th>Nazwa</th> <th>Cena</th>

</tr>
<tr>

<td>1</td> <td>Procesor</td> <td>980.00</td>

</tr>

...

<tr>

<td>10</td> <td>Listwa antyprzepięciowa</td>

HTML:

zaawansowane

możliwości tabel

Marcin Staniszczak

>>

Rys. 1.

Wyrównanie tekstu w pionie komórki

>>

Rys. 2.

Działanie kilku grup kolumn w jednej tabeli

89

INTERNET.maj.2006

www.mi.com.pl

1

2

W

EB

M

AS

TE

RIN

G

CZEGO SIÊ DOWIESZ Z TEGO ARTYKU£U:

l

nauczysz się wykorzystywać zaawansowane możli-

wości tabel oraz tworzyć odnośniki umieszczane na

stronie internetowej (zarówno do innych stron, jak

i w obrębie jednej strony

WYMAGANA WIEDZA:

l

podstawowa umiejêtnoœæ pos³ugiwania siê komputerem

oraz systemem Windows

l

materia³ zawarty w poprzedniej czêœci kursu (MI 4/06)

background image

90

INTERNET.maj.2006

www.mi.com.pl

<td>31.00</td>

</tr>
<tr>

<td colspan=”2”>Razem</td> <td>2488,57</td>

</tr> </table>

Na rys. 2 przedstawiono wynik działania kodu przykładowej ta-

beli wraz z opisem. Zauważmy, w jaki sposób traktowany jest a-

trybut

span

– znacznik z pierwszego znacznika <colgroup> od-

nosi się do pierwszej kolumny (span=”1” nakazuje grupowanie

tylko jednej kolumny), natomiast

span

z drugiego znacznika grupu-

je drugą oraz trzecią kolumnę (span=”2” nakazuje zgrupowanie 2

kolumn, jako że pierwsza kolumna już należy do innej grupy, <col-

group> grupuje kolejne dwie kolumny).

Równie przydatnym znacznikiem jak <colgroup> jest znacznik

<col>. Używa się go do formatowania grupy kolumn, wówczas gdy

nie chce się, aby wszystkie kolumny w grupie były traktowane jedna-

kowo. Znaczniki <col> umieszcza się w bloku <colgroup>, jedno-

cześnie nie trzeba stosować atrybutu span w <colgroup>. Zamiast

tego dla każdej formatowanej kolumny należy użyć znacznika <col>.

Znacznik ten może przyjąć dokładnie takie same atrybuty jak <col-

group>. Oznacza to, że za pomocą tego znacznika możemy jedno-

cześnie formatować większą liczbę kolumn. Jak zobaczymy w później-

szym przykładzie jest to bardzo przydatne, szczególnie w połączeniu

z innymi opisanymi w dalszej części znacznikami obsługującymi tabelę.

Przyjrzyjmy się więc rozszerzonej o nowe informacje tabeli

z poprzedniego przykładu:

<table border=”1”>

<colgroup span=”1” style=”background-color:

Ã

silver;” align=”left”/>
<colgroup>

<col span=”2” align=”left” style=”background-

Ã

color: #eee”/>
<col span=”1” align=”center” style=”color:

Ã

red; font-syle: italic”/>

</colgroup>
<colgroup span=”1” style=”background-color:

Ã

#fbb;” align=”right”/>
<tr>

<th>Lp.</th> <th>Część</th> <th>Model</th>
<th>Ilość</th> <th>Cena</th>

</tr>

<tr>

<td>1</td> <td>Procesor</td>
<td>Intel Pentium D 820 (S775) 2.80 GHz</td>
<td>1</td> <td>980.00</td>

</tr>
...
<tr>

<td colspan=”4”>Razem</td> <td>4160,57</td>

</tr>

</table>

Na koniec informacji o grupowaniu kolumn kubek zimnej wody –

mimo że sposób ten wydaje się bardzo wygodny i przydatny, prze-

glądarki wciąż nie w pełni wspierają formatowanie zgrupowanych

kolumn. Wystarczy, że przyjrzymy się rys. 3 – znajduje się tam

obok wytłumaczenia działania bloku <col> także dobra prezentacja

niedociągnięć występujących w przeglądarkach. Tekst w przedos-

tatniej kolumnie powinien być wyświetlony kolorem czerwonym, po-

chyłą czcionką. Niestety, Opera i Firefox zupełnie ignorują tę infor-

mację, Internet Explorer natomiast wyświetla tekst kolorem czer-

wony, lecz już nie stosuje dla niego pochyłej czcionki.

Grupowanie wierszy

Poza grupowaniem kolumn, HTML umożliwia także grupowanie

wierszy. Wiersze można pogrupować w trzy sekcje: nagłówek, ciało

oraz stopkę. Służą do tego odpowiednio bloki <thead>...</the-

ad>, <tbody>...</tbody>, <tfoot>...</tfoot>. Każda tabela

może mieć maksymalnie jeden nagłówek oraz jedną stopkę. Nie ist-

nieją jednak podobne ograniczenia odnośnie sekcji ciała tabeli – mo-

żemy podzielić swoją tabelę na wiele takich sekcji.

Wewnątrz sekcji nagłówka najczęściej umieszcza się znaczniki

<tr> wraz z <th>. Należy pamiętać, że sekcję nagłówka

umieszcza się albo zaraz bo znaczniku <table>, albo po <col-

group>. Sekcja ta musi także zawierać definicję przynajmniej jed-

nego wiersza tabeli (jest to zazwyczaj opis zawartości poszczegól-

nych jej kolumn – patrz niżej).

Sekcja stopki jest bardzo często powtórzeniem sekcji nagłówka.

Zwróćmy uwagę, że sekcja stopki umieszczana jest zaraz po sekcji

nagłówka, nie zaś przed znacznikiem zamykającym tabelę (</tab-

le>). Po sekcjach nagłówka oraz stopki umieszcza się sekcje ciała

tabeli. Sekcji tych, w przeciwieństwie do dwóch wcześniejszych,

może być wiele. Przyjrzyjmy się przykładowemu kodowi XHTML:

<table border=”1”>

<colgroup span=”1” style=”background-color:

Ã

silver;” align=”left”/> <colgroup>

<col span=”2” align=”left” style=”background-

Ã

color: #eee”/>
<col span=”1” align=”center” style=”color:

Ã

red; font-syle: italic”/> </colgroup>

<colgroup span=”1” style=”background-color:

Ã

#fbb;” align=”right”/>
<thead style=”background-color: #ddd”>

<tr>

<th>Lp.</th> <th>Część</th> <th>Model</th>
<th>Ilość</th> <th>Cena</th>

</tr>

</thead>
<tfoot style=”background-color: #ddd;

Ã

font-style:italic”>

<tr>

<th>Lp.</th> <th>Część</th> <th>Model</th>
<th>Ilość</th> <th>Cena</th>

</tr> </tfoot> <tbody>
<tr>

>>

Rys. 3

Zasada

działania

znacznika

<col>

3

Edytor ezHTML jest niestety bardzo prostym narzędziem i nie oferuje wsparcia dla najbardziej

zaawansowanych możliwości tabel. Nie jest to jednak duże ograniczenie, gdyż z powodzeniem

można wszystkie informacje wpisać ręcznie, ucząc się przy okazji zasady ich funkcjonowania.

background image

HTML

W

EB

M

AS

TE

RIN

G

<td>1</td> <td>Procesor</td>
<td>Intel Pentium D 820 (S775) 2.80 GHz</td>
<td>1</td> <td>980.00</td>

</tr>

...

<tr>

<td colspan=”4”>Razem</td> <td>4160,57</td>

</tr>

</tbody> </table>

Na rys. 4 możemy zobaczyć jak będzie wyglądać taki kod

w przeglądarce internetowej. Od razu rzuca się w oczy to, że

stopka mimo iż została zdeklarowana zaraz pod nagłówkiem, wy-

świetlana jest na samym dole tabeli.

Wszystkie te trzy bloki (<thead>, <tfoot>, oraz <tbody>)

mogą przyjmować cztery atrybuty –

align

,

char

,

charoff

, oraz

va-

lign

. Niestety, tak jak w przypadku znaczników <colgroup> oraz

<col>, tak i tutaj przeglądarki nie potrafią jeszcze poprawnie

zinterpretować atrybutów

charoff

oraz

char

.

Podział tabeli na trzy bloki – nagłówek, stopkę oraz ciało tabeli

– jest szczególnie pomocne przy druku długich tabel. Dzięki wy-

raźnemu podziałowi na bloki, przeglądarka podczas wydruku doda-

je do tabeli nagłówek oraz stopkę na każdej stronie wydruku. Po-

woduje to znaczną poprawę czytelności tak wydrukowanej strony.

Oczywiście można także za pomocą stylów osobno sformatować

każdy z tych bloków.

Dodatkowe atrybuty znacznika <table>

Gdy umiemy już podzielić tabele na grupy, dowiemy się w jaki spo-

sób można wyróżnić bloki, ustawiając odpowiednio obramowanie

pomiędzy komórkami. Służą do tego dwa dodatkowe atrybuty

znacznika <table> – frame oraz rules.

Atrybut

frame

służy do określenia wyglądu zewnętrznego obra-

mowania tabeli (wymaga on podania także parametru border o-

kreślającego szerokość obramowania). Może przyjąć jedną z na-

stępujących dziewięciu wartości:

4

void – oznacza, że wszystkie krawędzie tabeli mają pozostać

niewidoczne,

4

above – nakazuje wyświetlanie jedynie górnej krawędzi tabeli,

4

below – nakazuje wyświetlanie jedynie dolnej krawędzi tabeli,

4

hsides – nakazuje wyświetlanie zarówno górnej, jak i dolnej

krawędzi tabeli,

4

lhs – nakazuje wyświetlanie lewej krawędzi tabeli,

4

rhs – nakazuje wyświetlanie prawej krawędzi tabeli,

4

vsides – nakazuje wyświetlanie zarówno lewej jak i prawej

krawędzi tabeli,

4

box – powoduje wszystkich krawędzi tabeli,

4

border – ma takie samo działanie jak wartość

box

.

Atrybut

rules

natomiast definiuje obramowanie znajdujące się

pomiędzy komórkami tabeli. Przyjmuje jedną z poniższych wartości:

4

none – oznacza, że wszystkie wewnętrzne krawędzie tabeli

mają pozostać niewidoczne,

4

groups – określa, że linie mają zostać wyświetlane jedynie

pomiędzy grupami <thead>, <tfoot>, <tbody>, <col-

group> oraz <col>,

4

rows – nakazuje wyświetlanie linii jedynie pomiędzy wiersza-

mi tabeli,

4

cols – nakazuje wyświetlanie linii jedynie pomiędzy komórka-

mi tabeli,

4

all – nakazuje wyświetlanie wszystkich (pomiędzy wszystkimi

wierszami oraz komórkami tabeli).

Na rys. 5 znajduje się przykład działania kilku wybranych war-

tości obu atrybutów. Zapoznanie się z działaniem pozostałych

wartości pozostawiamy Czytelnikom.

n

>>

Rys. 5

Przykład

działania

atrybutów

frame oraz

rules

znacznika

<table>

>>

Rys. 4.

Wsparcie dla tabel w edytorze EzHTML

4

5

INTERNET.maj.2006

www.mi.com.pl

91

Chcesz wiedzieć więcej? Odwiedź nasze forum:

http://forum.mi.com.pl


Wyszukiwarka

Podobne podstrony:
HTML układ stałej szerokości 05 2006
rynek kapitałowy 05 2006 YYKH5PTPKGRY4BNJOORGG4BATZ6HVFACSJQQZ5Y
finanse międzynarodowe w 11  05 2006 DRQ25QRXV3JYHFZSHXG4URPO2CIXQOVAD4VOUJQ
matura ustna polski 05 2006 32A6VN6JFW3ELOAX56BIT2QDN2W33LJ5EKKUFEY
REGION Wyk ad i 05 2006 r
kolokwia, ZPR k2 16.05.2006, K2
cz09 05 2006
spis zagadnie romantyzm 05 2006
prawo energetyczne 16 05 2006
HTML & PHP Kontrolki formularzy 05 2005
MW1 RX Fx 15 05 2006 DS PA PL F
Interna test ' 05 2006
transport i handel morski w12 (24 05 2006) R4EPXQJGWVITLH46DD6ALFUV3LCVB72CR6TBKJA
finanse międzynarodowe w 12 0 05 2006 MG7HDJ5P7BCGKXXRGPCTR5TEODMA3WSAUQ53A3A
TEST FiB$[1][1] 05 2006

więcej podobnych podstron