Martin Jeppesen wrote:
> Problemet er, at jeg har ikke helt forstået forskellen på en DIV
> og en CLASS.
De to har intet med hinanden at gøre. En <div> er et HTML (Hyper Text
Markup Language)-element, der typisk bruges til at opdele dokumentet:
http://www.w3.org/TR/html4/struct/global.html#edef-DIV
Eksempelvis benytter jeg det til min egen hjemmeside til at inddele
dokumentet i en menu, hovedindhold og footer. Derved bliver siden
mere overskuelig, og delene kan placeres og arrangeres via CSS
(Cascading Style Sheets).
En class/klasse er derimod en abstraktion, man her bruger i
forbindelse med CSS. Tilsvarende er et id en art abstraktion.
Forskellen mellem class og id er, at class kan benyttes generelt,
mens id er forbehold eet og kun eet element i et HTML-dokument.
Når man skriver
<p class="anderledes">Denne tekst skal vises anderledes fra anden
brødtekst</p>
<p>Mens den her tekst vises normalt.</p>
vil den første <p> kunne præsenteres anderledes alt efter, hvad der
står defineret i et style sheet.
Dette kunne gøres sådan her:
p.anderledes {
color: #0000ff; /* blå tekst */
font-style: italic; /* kursiv */
}
Denne CSS-regel vil matche alle <p>-elementer med klassen
"anderledes".
Hvis man derimod har følgende i sit style sheet:
..anderledes {
color: #ff0000; /* rød tekst */
font-weight: bold; /* fed */
}
vil reglen matche alle slags elementer, der har fået tildelt klassen
"anderledes".
> Det skulle vel aldrig være sådan, at jeg i min
> table#list{
[snip]
> }
> kan angive at alle celler skal eks.vis være blå?
Jo, du kan bl.a. gøre sådan her, hvis du vil have blå baggrundsfarve
til dine celler i tabellen med id "list":
table#list td {
background-color: #0000ff;
}
>> Forresten kan jeg ikke lige se ideen i at bruge en tabel til en
>> så simpel punktopstilling - hvorfor ikke benytte HTMLs udmærkede
>> listeelementer til det formål?
>
> Tabellen bliver størrere senere=)
Okay, du skulle bare lige kende alternativerne til så enkle "lister".
> Så .NAVN (i CSS) er altså en CLASS og bruges sådan:
> <div class="NAVN">
> </div>
Ja, eller <p class="klassenavn">, <em class="klassenavn">,
<td class="klassenavn"> og så videre.
> Hvornår bruger man så #NAVN (i CSS) og <div id="NAVN"></div>
Det gør man, for at skrive regler for de *unikke* elementer, der har
fået tildelt et bestemt id. Forskellen mellem class og id er ikke så
stor. Class kan man have mange af, mens man kun kan have eet id
(hvilket ligger nærmest implicit i betegnelsen).
Af praktiske forskelle er der, at id kan benyttes som interne ankre i
dokumenter:
<h1>Titel</h1>
<p>Klik på punkterne i listen for at springe ned til de relevante
afsnit:</p>
<ul>
<li><a href="#afsnit1">Første afsnit</a></li>
<li><a href="#afsnit2">Andet afsnit</a></li>
....
<li><a href="#afsnitN">N'te afsnit</a></li>
</ul>
<h2 id="afsnit1">Første afsnit</h2>
<p>bla bla...</p>
<h2 id="afsnit2">Andet afsnit</h2>
<p>bla bla...</p>
....
<h2 id="afsnitN">N'te afsnit</h2>
<p>bla bla...</p>
--
Anders Thorsen Holm |
http://www.daimi.au.dk/~zoolook/
Overvejer du at købe en DVD-afspiller? Så hold dig fra Fona!
Læs hvorfor:
http://www.daimi.au.dk/~zoolook/fona/