HTML & CSS for begyndere

HTML & CSS for begyndere (Del 35): Lister og tællere

Alle videoer i tutorialen HTML & CSS for begyndere

Med de CSS-egenskaber, der vises i denne vejledning, kan du designe lister. Oplysningerne gælder HTML-elementerne ul og ol. Du kan derfor tilpasse ordnede og uordnede lister efter dine ønsker.


Generelle oplysninger om listen

Ved list-style er der tale om en sammenfatning af de følgende tre egenskaber:

list-style-type

list-style-position

list-style-image

Med list-style kan du påvirke typen af de grafiske opstillingspunkter for opremsninger og deres indrykning. De nævnte oplysninger noteres hver for sig adskilt af et komma. Rækkefølgen er ligegyldig, og det er heller ikke nødvendigt at angive en værdi for hver egenskab.

Et eksempel:

<!DOCTYPE html>
 <html>
 <head>
<meta charset="utf-8">
<title>PSD-Tutorials.de</title>
 <style>
 ul {
    list-style:square;
 }
 </style>
 </head>
 <body>
 <ul>
 <li>HTML</li>
 <li>CSS</li>
 <li>JavaScript</li>
 </ul>
 </body>
 </html>

Sådan ser det ud i browseren:

HTML & CSS for begyndere (Del 35): Lister og tællere

Grafiske opstillingspunkter

Du kan angive dit eget billede som opstillingspunkt. Egenskaben list-style-image anvendes til dette. De følgende værdier er mulige:

url – filnavnet og eventuel sti til billedet

none – intet billede vises.

Et eksempel:

ul { 
    list-style-image: url(bullet.gif); 
 }



Vær opmærksom på, at stien til det angivne billede ved URL'en er korrekt.

HTML & CSS for begyndere (Del 35): Lister og tællere



Hvis en forkert sti er angivet, bør browsere vende tilbage til en standard opstillingspunkt.

Opstillingspunktets position

Med list-style-position defineres, hvordan nummereringer eller opstillingspunkter skal opføre sig med hensyn til indrykning.

inside – den første linje er indrykket så meget, at opstillingspunktet og listeelementet afsluttes venstrejusteret.

outside – opstillingspunktet er til venstre for listeelementet.

I det følgende eksempel anvendes værdierne inside og outside.

<!DOCTYPE html>
 <html>
 <head>
<meta charset="utf-8">
<title>PSD-Tutorials.de</title>
 <style>
 ul.a {
    list-style-position:inside;
 }
 ul.b {
    list-style-position:outside;
 }
 </style>
 </head>
 <body>
 <p>En indeni-liste:</p>
 <ul class="a">
 <li>HTML</li>
 <li>CSS</li>
 <li>JavaScript</li>
 </ul>
 <p>En udenfor-liste:</p>
 <ul class="b">
 <li>HTML</li>
 <li>CSS</li>
 <li>JavaScript</li>
 </ul>
 </body>
 </html>

På denne måde kan man straks se, hvilke forskellige virkninger disse to værdier faktisk har.

HTML & CSS for begyndere (Del 35): Lister og tællere

Opsætning af opstillingspunkternes udseende

For bullet- eller opstillingspunkterne kan du bestemme udseendet eksplicit. På samme måde kan du påvirke visningen af nummererede lister. Egenskaben list-style-type bruges til dette. Tilladte værdier for denne egenskab er følgende:

decimal – for ol-lister: Numerering 1, 2, 3 osv.

lower-roman – for ol-lister: Numerering i., ii., iii. osv.

upper-roman – for ol-lister: Numerering I., II., III., IV. osv.

lower-alpha eller lower-latin – for ol-lister: Numerering I., II., III., IV. osv.

upper-alpha eller upper-latin – for ol-lister: Numerering A., B., C., D. osv.

disc – for ul-lister: Fyldt cirkel som opstillingspunkt

circle – for ul-lister: Tom cirkel som opstillingspunkt

square – for ul-lister: Rektangel som opstillingspunkt

none – hverken opstillingspunkt eller numerering

lower-greek – for ol-lister: Numerering med græske bogstaver

hebrew – for ol-lister: Numerering med hebraiske bogstaver

decimal-leading-zero – for ol-lister: Numerering med førende nuller 0: 01., 02., 03., 04. osv.

cjk-ideographic – for ol-lister: Numerering med ideografiske tegn

hiragana – for ol-lister: Japansk numerering (med små bogstaver)

katakana – for ol-lister: Japansk numerering (med store bogstaver)

hiragana-iroha – for ol-lister: Japansk numerering (med små bogstaver)

katakana-iroha – for ol-lister: Japansk numerering (med store bogstaver)

I det følgende eksempel bruges nogle af de nævnte varianter.

<!DOCTYPE html>
 <html>
 <head>
  <meta charset="utf-8">
  <title>PSD-Tutorials.de</title>
  <style>
   ul.a {
      list-style-type:circle;
   }
   ul.b {
      list-style-type:square;
   }
   ol.c {
      list-style-type:upper-roman;
   }
   ol.d {
      list-style-type:lower-alpha;
   }
  </style>
 </head>
 <body> 
   <ul class="a">   
      <li>HTML</li>   
      <li>CSS</li>
      <li>JavaScript</li>
   </ul> 
   <ul class="b">   
      <li>HTML</li>   
      <li>CSS</li>   
      <li>JavaScript</li> 
   </ul> 
   <ol class="c"> 
      <li>HTML</li>   
      <li>CSS</li>   
      <li>JavaScript</li> 
   </ol> 
   <ol class="d">   
      <li>HTML</li>   
      <li>CSS</li>   
      <li>JavaScript</li> 
   </ol> 
 </body> 
 </html>

I browseren får man følgende billede:

HTML & CSS for begyndere (Del 35): Lister og Counter

Tæller

Indhold kan nummereres via ol-lister. Til mere komplekse anvendelser er denne nummereringsform imidlertid ikke særlig praktisk. CSS tilbyder i stedet en alternativ løsning med tællere.

Nedenfor viser jeg, hvordan du kan bruge tællere.

Først opretter jeg en ny tæller til body-elementet.

body { 
    counter-reset: kapitel; 
 }

Takket være denne definition eksisterer tælleren kapitel i dokumentet. Denne tæller kan nu bruges.

h1 { 
    counter-increment: kapitel; 
 }



Ved den viste syntaks øges tælleren automatisk med værdien 1, hver gang et nyt h1-element vises. Problemet er imidlertid, at tællingen endnu ikke er synlig. Dette kan nemt ændres ved hjælp af pseudoelementer.

h1::before {
   content: counter(kapitel) ". ";
 }



Et komplet eksempel kunne se sådan ud:

<!DOCTYPE html>
 <html>
 <head>
 <meta charset="utf-8">
 <title>PSD-Tutorials.de</title>
 <style>
 body {
    counter-reset: kapitel;
 }
 h1 {
    counter-increment: kapitel;
 }
 h1::before {
    content: counter(kapitel) ". ";
 }
 </style>
 </head>
 <body>
 <h1>Kapitel</h1>
 <h1>Kapitel</h1>
 </body>
 </html>

Og her er resultatet i browseren:

HTML & CSS for begyndere (Del 35): Lister og tællere



I det viste eksempel angives det respektive nummer i starten af h1-elementet gennem ::before. For at nummeret ikke skal sidde direkte på overskriftens tekst, indsættes der et punkt og et mellemrum efter nummeret.

content: counter(kapitel) ". "



Det er også muligt at have indlejrede tællinger. Dette opnås ved at definere tælleren på det tidspunkt, hvor den skal starte forfra igen.

h1 {
   counter-increment: kapitel;
   counter-reset: underkapitel;
 }

Sådan nulstilles tælleren i dette eksempel altid, når et nyt h1-element vises. Det følgende eksempel viser en typisk anvendelse af indlejrede tællere.

<!DOCTYPE html>
 <html>
 <head>
 <meta charset="utf-8">
 <title>PSD-Tutorials.de</title>
 <style>
 body {
    counter-reset: kapitel;
 }
 h1 {
    counter-reset: underkapitel;
 }
 h1:before {
    counter-increment: kapitel;
    content: counter(kapitel) ". ";
 }
 h2:before {
    counter-increment: underkapitel;
    content: counter(kapitel) "." counter(underkapitel) " ";
 }
 </style>
 </head>
 <body>
 <h1>Kapitel</h1>
 <h2>Underkapitel</h2>
 <h2>Underkapitel</h2>
 <h2>Underkapitel</h2>
 <h1>Kapitel</h1>
 <h2>Underkapitel</h2>
 <h2>Underkapitel</h2>
 <h2>Underkapitel</h2>
 </body>
 </html>

I browseren ser det hele sådan ud:

HTML & CSS for begyndere (Del 35): Lister og tællere



Eksemplerne har vist, hvor effektive tællere kan være.