Smuk punktliste i css. CSS Design: Taming Lists

MED ved hjælp af CSS Du kan oprette punktlister og nummererede lister eller bruge et passende billede som markør.

I tabel 1 viser egenskaberne for elementer beregnet til at oprette og ændre lister.

Bord 1. CSS-egenskaber til at kontrollere udseendet af listen
Ejendom Betyder Beskrivelse Eksempel
liste-stil-type disk
cirkel
firkant
decimal
lavere-romersk
øvre-roman
lavere alfa
øvre-alfa
ingen
Type markør. De første tre bruges til at oprette en punktopstilling, og de resterende tre bruges til at oprette en nummereret liste. LI (liste-stil-type: cirkel)
LI (liste-stil-type: øvre-alfa)
liste-stil-billede ingen
URL
Indstiller ethvert billede som et markørsymbol. LI (liste-stil-billede: url(check.gif))
liste-stil-position uden for
inde
Valg af markørens position i forhold til blokken af ​​tekstlinjer. LI (liste-stil-position: inde)
liste-stil En universel egenskab, der samtidig omfatter alle ovenstående egenskaber.

Siden tagget

  • arver taggens stilegenskaber
      eller
        som fungerer som dens forælder, kan du style både UL-vælgeren og LI-vælgeren. Så i eksempel 1 bruges UL-vælgeren, og stilparametre er indstillet til den.

        Eksempel 1: Opret en punktopstilling

        Lister

        Resultat dette eksempel vist i fig. 1. Der anvendes kvadratiske markører og deres ydre placering i forhold til teksten.

        Ris. 1. Listevisning ændret ved hjælp af stilarter

        Anvend for at indstille dit eget billede som en markør ejendom i listestil-billede som vist i eksempel 2.

        Eksempel 2: Brug af billeder som markører

        Lister

        • Titlen skal være kortere end tre linjer.
        • Når du navngiver sektioner, skal du bruge etablerede udtryk, som f.eks Gæstebog, chat, link, startside og andre.
        • Før du bruger et teknisk udtryk eller et ord, skal du beslutte, om det vil blive forstået af læseren.

        Resultatet af dette eksempel er vist i fig. 2. Et lille billede bruges som markører.

        Ris. 2. Billeder som markører

        Nogle eksempler på skabelse forskellige lister er angivet i tabel. 2.

        Bord 2. Mulige typer lister
        HTML-kode Eksempel
      • Ting at overveje, når du tester et websted:
        • Alle links virker
        • understøttelse af forskellige browsere
        • tekst læsbarhed
      • Ting at overveje, når du tester et websted:
        • Alle links virker
        • understøttelse af forskellige browsere
        • tekst læsbarhed
      • Nummereret liste med arabiske tal:

        1. først
        2. anden
        3. tredje
      • Nummereret liste med små romertal:

        1. først
        2. anden
        3. tredje
      • Nummereret liste med store romertal:

        1. først
        2. anden
        3. tredje
      • Nummereret liste med små bogstaver latinske alfabet:

        1. først
        2. anden
        3. tredje
      • Nummereret liste med store bogstaver i det latinske alfabet:

        1. først
        2. anden
        3. tredje

        Hej kære læsere af bloggen. I dag vil der være en anden artikel om egenskaberne ved cascading style sheets. I det vi taler om styling ved hjælp af CSS-regler.

        Generelt adskiller lister sig blandt blokelementer. Dette skyldes, at de inkluderer punkttegn og nummerering, der placeres af browseren selv.

        Listestil egenskab - design af en liste på en html-side

        I CSS sprog Der er tre egenskaber, der starter med listestil, og som er ansvarlige for udformningen af ​​punktopstilling og nummererede lister. Derudover er der også et hold liste-stil regel, så du kan reducere mængden af ​​kode.

        Alle disse egenskaber kan bruges til begge html elementer li, og for elementerne ul og ol. Den eneste forskel er, at hvis reglerne er skrevet for en bestemt værdi af li-listen, så vil den kun blive anvendt på den. Og hvis de samme css-regler er skrevet for ul- eller ul-containere, så vil de blive anvendt på alle li-elementer indeholdt i disse containere.

        Lad os starte med attributten liste-stil-type, som sætter type markører eller nummerering for listepunkter:

        liste-stil-type: disk|cirkel|firkant|decimal|decimal-ledende-nul|nedre-romersk|øvre-romersk|nedre-græsk|nedre-alfa|nedre-latin|øvre-alfa|øvre-latinsk|armensk| georgisk|ingen|arver

        Som du kan se, har egenskaben list-style-type mange tilgængelige værdier, som kan angive både typen af ​​markør og forskellige slags nummerering.

        • disk - en markør i form af en sort cirkel (standardværdi for punktopstilling).
        • cirkel - markør i form af en uudfyldt cirkel.
        • firkant - markør i form af en firkant. Det kan være lyst eller mørkt, afhængigt af browseren.
        • decimal - nummerering med arabiske tal (standardværdi for nummererede lister).
        • decimal-førende-nul - nummerering i arabiske tal fra 01 til 99 med et indledende nul.
        • lavere-romersk - nummerering i små romertal.
        • øvre-romersk - nummerering i store romertal.
        • lavere-græsk - nummerering med små græske bogstaver.
        • lavere alfa og lavere latin - nummerering med små latinske bogstaver.
        • øvre-alfa og øvre-latin - nummerering med store latinske bogstaver.
        • armensk - nummerering ved hjælp af traditionelle armenske tal.
        • georgisk - nummerering ved hjælp af traditionelle georgiske tal.
        • ingen - mærkning og nummerering vil slet ikke blive udført.

        Sådan vil listepunkterne se ud i browseren med forskellige betydninger liste-stil-type:

        Ved brug af CSS stilarter det er lige meget hvilket element (OL eller UL) der bruges til at oprette listen. OL og UL adskiller sig kun i standardadfærd, og med egenskaben listestil-type kan du nemt forvandle en slags liste til en anden.

        Stil attribut liste-stil-billede giver dig mulighed for at indstille som markør listeelementer grafisk billede . Når du bruger attributten list-style-image, ignoreres værdien af ​​list-style-type attributten:

        liste-stil-billede: ingen|<интернет-адрес файла изображения>|arve

        Betyder ingen fjerner billedmarkøren og indstiller den til normal, ikke grafisk. Dette er standardadfærden.

        Når du angiver adressen på billedfilen, vil billedet blive indsat i stedet for markøren. Som med at bruge , kan du bruge både absolutte og relative adresser som billedadresse. Hvis browseren ikke er i stand til at indlæse billedet, vil standardmarkøren eller -nummereringen blive brugt eller det, der er angivet i egenskaben i list-style-type.

        Eksempel på en liste med et billede som markør:


        • første listepunkt;

        • andet listepunkt;

        • tredje punkt på listen.

        Og sådan ser det ud:

        • første listepunkt;
        • andet listepunkt;
        • tredje punkt på listen.

        Det er klart, at når du vælger et billede som markør, er det bedre at vælge et lille billede.

        Og den sidste CSS-egenskab fra listestil-serien er liste-stil-position som giver dig mulighed for at angive placeringen af ​​en punkttegn eller nummerering i et listeelement. Der kan være to muligheder for værdien:

        liste-stil-position: inde|udvendig

        I tilfælde af værdi inde en markør eller nummerering placeres som inde i en liste og i etuiet uden for uden for li-elementer. Standardværdien er udenfor, og markøren flyttes udenfor.

        Eksempelliste med forskellige listestil-positionsværdier:

        • i første afsnit er alt som standard;
        • i andet afsnit er liste-stil-position sat til inde. I dette tilfælde skal du bemærke, at den anden linje er placeret i plan med markøren;
        • på dette tidspunkt er liste-stil-position lig med outside.

        Præfabrikeret CSS liste-stil regel

        Den følgende egenskab i CSS-listestil er en præfabrikeret til stylinglister. Det giver dig mulighed for at skrive alle tre CSS-regler diskuteret ovenfor i en enkelt. Rækkefølgen for at specificere værdierne i den kan være en hvilken som helst, og de parametre, du ikke angiver i listestilen, vil blive taget af browseren som standard.

        Værdierne i kompileringsreglen i listestil skal adskilles med mellemrum:

        liste-stil: liste-stil-type liste-stil-billede liste-stil-position;

        En rigtig CSS-regel for stylinglister kan se sådan ud:

        liste-stil: cirkel url (http://site/images/marker.png) udenfor;

        Således giver egenskaben listestil dig mulighed for at reducere mængden af ​​kode betydeligt, fordi i stedet for tre regler er det nok kun at indstille én.

        Som nævnt ovenfor kan værdier angives i enhver rækkefølge og i enhver mængde. Så for eksempel for at fjern markører fra menulisten det er nok at skrive:

        liste-stil: ingen;

        Det samme kan gøres ved at bruge egenskaben list-style-type:

        liste-stil-type: ingen;

        Dette er historien om html design lister ved hjælp af cascading style sheets vil jeg afslutte. At finde ud af om andre CSS-egenskaber du kan læse artikler fra afsnittet "" og glem ikke at abonnere på blogopdateringer. Vi ses!

        HTML lister (

          for nummereret,
            for unummererede lister) bruges meget ofte. I denne tutorial går vi videre end at oprette almindelige lister og viser dig 8 forskellige, iøjnefaldende måder at designe dem på. HTML lister ved hjælp af CSS. Vi vil bruge ren CSS at få en kedelig liste til at se cool ud og endda få yderligere funktionalitet.

            Sådan ser standardnummererede og unummererede lister ud:

            1. Nummereret listepunkt #1
            2. Nummereret listepunkt #2
            3. Nummereret listeelement #3
            • Uordnet listepunkt #1
            • Uordnet listepunkt #2
            • Uordnet listepunkt #3

            Tjek eksemplet for at se, hvad vi laver.

            Ser meget bedre ud, gør det ikke? Og du kan oprette alt dette blot ved at tilføje en lille CSS-kode. Vil du vide, hvordan man gør dette? Lad os komme igang!

            Liste #1: Simpel menu

            Den mest almindelige brug af lister på hjemmesider er at lave menuer. Dette eksempel viser kode, der vil skabe en enkel, minimalistisk, men elegant menu.

            HTML

            CSS

            /* Liste #1 */ #liste1 ( ) #liste1 ul ( liste-stil: ingen ; tekst-align: center ; border-top: 1 px solid #eee ; border-bottom: 1 px solid #eee ; polstring: 10px 0 ; ) #list1 ul li ( display:inline ; text-transform:store bogstaver ; polstring: 0 10px; bogstavmellemrum: 10px; ) #list1 ul li a ( tekst-dekoration:ingen ; farve :#eee ; ) #liste1 ul li a:hover ( tekst-dekoration:understregning ; )

            Liste #2: Forskellig skrifttype til tal

            Det vanskelige med lister er, at alt på listen skal se ens ud. Tallene på listen skal have samme farve og skrifttype som teksten.

            Men tilføjer ekstra element liste-element, Du kan omgå disse begrænsninger og oprette en meget usædvanlig liste. Sådan gør du:

            HTML

            1. Holland er et land i...

            2. Amerikas Forenede Stater er en føderal forfatning ...

            3. Filippinerne officielt kendt som Republikken ...

            4. Det Forenede Kongerige af Storbritannien og...

            CSS

            /* Liste #2 */ #liste2 ( bredde: 320px; ) #list2 ol ( font-style:italic; font-family:Georgia, Times, serif; font-size: 24px; farve :#bfe1f1 ; ) #list2 ol li ( ) #list2 ol li p (polstring: 8px; font-style:normal ; font-family:Arial ; skriftstørrelse: 13 px; farve :#eee ; kant-venstre: 1px fast # 999 ; ) #list2 ol li p em ( display:blok ; )

            Liste #3: Liste med indekser

            Du kan ændre indeksstilen for en uordnet liste til nogle af de indbyggede visninger, men du kan også ændre den til et billede. Denne metode vil gøre listen endnu mere attraktiv. Lad os se på, hvordan man gør dette.

            HTML

            • Java
            • .NET
            • C++
            • PHP

            CSS

            /* Liste #3 */ #list3 ( ) #list3 ul ( list-style-image : url ("../images/arrow.png" ) ; farve :#eee ; font-size: 18 px; ) #list3 ul li (linjehøjde: 30 px; }

            Liste #4: iPhone-stilliste

            Denne liste er taget fra artiklen "iPhone Contacts App Using CSS and Jquery". Det ligner en liste fra iPhones Kontakter-app. Lidt mere stil til din hjemmeside.

            HTML

            CSS

            /* Liste #4 */ #liste4 ( bredde: 320px; font-family:Georgia, Times, serif; skriftstørrelse: 15 px; ) #liste4 ul ( liste-stil : ingen ; ) # liste4 ul li ( ) # liste4 ul li a ( display:blok ; tekst-dekoration: ingen ; farve :# 000000 ; baggrundsfarve :#FFFFFF ; linjehøjde: 30 px; border-bottom-style:solid ; kant-bund-bredde: 1 px; border-bottom-color :#CCCCCC ; polstring-venstre: 10px; cursor:pointer ; ) #list4 ul li a:hover ( farve :#FFFFFF ; background-image:url (../images/hover.png ); background-repeat:repeat-x ; ) #list4 ul li a strong ( margin-right: 10px; }

            Liste #5: Trælister

            Trælister, dvs. indlejrede lister, kan være meget nyttige og smukke. Ved at bruge det tredje eksempel, en markørliste, kan vi oprette en udvidet liste. Selvfølgelig kan du endda gøre lister sammenklappelige og udvidelige ved hjælp af jQuery, men vi dækker kun CSS her.

            HTML

            1. Google
              1. Picasa
              2. Feedburner
              3. Youtube
            2. Microsoft
              1. Corel Corporation
              2. Zignals
              3. ByteTaxi
            3. Yahoo!
              1. Xoopit
              2. BuzzTracker
              3. MyBlogLog

            CSS

            /* Liste #5 */ #liste5 ( farve :#eee ; ) #liste5 ol ( font-size: 18 px; ) #list5 ol li ( ) #list5 ol li ol ( list-style-image : url ("../images/nested.png" ); udfyldning: 5 px 0 5px 18px ; skriftstørrelse: 15 px; ) #list5 ol li ol li ( farve :#bfe1f1 ; højde: 15 px; margin-venstre: 10px; }

            Liste #6: Romertal og tekst med flere linjer

            Som standard bruger en nummereret liste arabiske tal (1, 2, 3, 4 osv.) til nummerering. Ved at ændre værdien af ​​egenskaben listestil-type kan du vælge andre nummereringstypografier, såsom romertal.

            Listemarkørerne er også som standard placeret uden for listen, du kan se dette i det andet eksempel, en anden skrifttype til tallene. For at omgå denne begrænsning kan du ændre værdien af ​​egenskaben listestil-position, så nummereringen er placeret inde i listen.

            HTML

            1. Lorem ipsum dolor sit amet, ...
              Fusce sit amet...
            2. Aenean placer lectus tristique...
              Vivamus interdum...
            3. Mauris eget sapien arcu, vitae...
              Phasellus neque risus...
            4. Phasellus feugiat lacus...
              Duis rhoncus...

            CSS

            /* Liste #6 */ #list6 ( font-family : "Trebuchet MS" , "Lucida Grande" , Verdana, Lucida, Geneve, Helvetica, Arial, sans-serif ; ) #list6 ol ( liste-stil-type: øvre -romersk ; farve :#eee ; 14 px; liste-stil-position: inde; ) #list6 ol li ( )

            Liste #7: Kommasepareret, enkelt-linje liste

            Lister bruges oftest til at vise elementer under hinanden. Men hvad nu hvis du vil oprette en liste på én linje? Du kan opnå dette ved at indstille egenskaben display til inline. Men hvis du bruger tekst, foretrækker du måske at oprette en kommasepareret liste. Hvordan opnår man dette? Brug af pseudoklassen:after.

            HTML

            • Første inline element
            • Andet inline element
            • Tredje inline element
            • Fjerde inline-element

            CSS

            /* Liste #7 */ #liste7 ( ) #liste7 ul ( farve :#eee ; font-size: 18 px; font-family:Georgia, Times, serif; ) #list7 ul li (display : inline ; ) #list7 ul li:after ( content : ", " ; ) #list7 ul li.last :after ( indhold : "." ; )

            Liste #8: Roterende menu

            Her sidste metode, som fungerer med CSS3 og understøttes af Firefox, Safari og Chrome browsere. Når du holder musen over blokelement, vil den gå ind i den aktive roterede tilstand. Denne metode er måske ikke særlig nyttig, men den er rar at se på.

          • Om
          • Kontakt
  • CSS

    /* Liste #8 */ #list8 ( ) #list8 ul ( list-style:none ; ) #list8 ul li ( font-family:Georgia ,serif ,Times; font-size: 18 px; ) #list8 ul li a ( display:blok ; bredde: 300 px; højde: 28px; baggrundsfarve :# 333 ; grænse-venstre: 5 px fast # 222 ; grænse-højre: 5 px fast # 222 ; polstring-venstre: 10px; tekst-dekoration: ingen ; farve :#bfe1f1 ; ) #list8 ul li a:hover ( -moz-transform:rotate (-5deg); -moz-box-shadow: 10px 10px 20px # 000000 ; -webkit-transform:rotate (-5deg); -webkit-box-shadow: 10px 10px 20px # 000000 ; transform:rotate (-5deg); box-shadow: 10px 10px 20px # 000000 ; }

    Konklusion

    I denne lektion lærte du, hvordan du kan gøre usædvanlige ting med almindelig liste. Og alt dette bruger kun CSS. Vi håber, du nyder at bruge disse lister!

    Oversættelse – Vagtværelse

    CSS gør det muligt at oprette punkt- og nummererede lister, designe punktlister med billeder og om nødvendigt fjerne eventuelle punktopstillinger helt.

    CSS punktliste stilarter.

    liste-stil-type

    liste-stil-type: disk | cirkel | firkantet | decimal | lavere-romersk | øvre-romersk | lavere alfa | øvre-alfa | ingen ;

    Betyder :

    disk – punktopstilling i form af en udfyldt cirkel

    cirkel – punktopstilling i form af en uudfyldt cirkel

    kvadrat – en punktopstilling i form af en udfyldt firkant

    decimal – nummereret liste med arabiske tal (1,2,3 osv.)

    øvre romersk - nummereret liste med store romertal (I, II, III, IV osv.)

    lavere romersk - nummereret liste med små romertal (i,ii,iii,iv osv.)

    øvre alfa – nummereret liste med store bogstaver (A,B,C osv.)

    lavere alfa - nummereret liste med små bogstaver (a, b, c osv.)

    ingen – ingen markør.

    Eksempel:

    List egenskaber i css

    • Tro på det bedste, forvent det værste.
    • Livet er en sygdom med dødelig udgang.
    • Aldrig sig aldrig.

    Resultat :

    Der er tilfælde, hvor visningen af ​​en markør på listen skal fjernes. For at gøre dette skal du skrive CSS-koden

    liste-stil-type: ingen;

    Eksempel:

    List egenskaber i css

    • Tro på det bedste, forvent det værste.
    • Aldrig sig aldrig.

    Resultat :

    Du kan erstatte almindelige markører på listen egne billeder. Dette kan gøres ved at bruge egenskaben list-style-image.

    liste-stil-billede

    liste-stil-billede: url(image.png);

    Eksempel:

    List egenskaber i css

    • Tro på det bedste, forvent det værste.
    • Livet er en sygdom med dødelig udgang.
    • Aldrig sig aldrig.

    Resultat :

    Du kan også indstille afstanden mellem punktopstillingen og teksten. Dette kan gøres ved at bruge padding-left egenskaben på li-vælgeren.

    Eksempel:

    List egenskaber i css

    • Tro på det bedste, forvent det værste.
    • Livet er en sygdom med dødelig udgang.
    • Aldrig sig aldrig.

    Resultat :

    Den næste opgave er at ændre farven på markøren uden at ændre farven på teksten. Hvordan er det muligt? Markørfarven kan ændres ved at tilføje et tag til testen .
    Det ser sådan ud:

  • tekst
  • Eksempel:

    List egenskaber i css

    • Tro på det bedste, forvent det værste.
    • Livet er en sygdom med dødelig udgang.
    • Aldrig sig aldrig.

    Resultat :

    Tilføjelse til det generelle emne.
    Hvis du af en eller anden grund har brug for at indstille nummereringen af ​​markørlisten ikke fra nul, men f.eks. fra 8, kan du foretage dette træk.

    Eksempel:

    List egenskaber i css

    • Tro på det bedste, forvent det værste punkt 1
    • Livet er en dødelig sygdom
    • Sig aldrig aldrig punkt 3
    • Det var alt, hvad jeg vidste. Punkt 4

    Resultat :

    Dette emne er nået til en ende.

    Jeg kan huske, hvordan jeg i juli 1999 underviste folk på e-mail-lister om fornøjelserne ved stillayout. Siden da har lidt ændret sig.

    Noget har dog ændret sig. Mit syn på CSS og på (X)HTML, der fungerer som en ramme for stilarter, har ændret sig. For eksempel fandt jeg ud af, at de fleste sider indeholder en navigationslinje. Oftest er det designet som en simpel tekststreng med links adskilt af tags

    eller

    Strukturelt set er de lister over links og bør derfor formateres som sådan.

    Grunden til, at vi ikke stiler dem som lister, er, fordi vi ikke rigtig ønsker at se en punkttegn før hvert link i menuen. Tidligere talte jeg om nogle teknikker til at lægge sider ud ved hjælp af CSS. I et af disse tricks lærte vi at vise lister på en linje i stedet for lodret.

    I denne artikel vil jeg vise dig, hvordan du kan tæmme de klodsede og klodsede lister ved hjælp af CSS. Stop dem med at vandre rundt på dine websider. Det er din tid til at beordre ham, hvordan han skal opføre sig.

    Forberedelse af arenaen

    Som træningsfag valgte jeg enkle, unummererede lister. Alle de her nævnte CSS-regler kan anvendes på nummererede lister med samme resultat. I alle eksempler (undtagen hvor specifikt angivet) er følgende liste brugt:

    • Punkt 1
    • Punkt 2
    • Punkt 3
    • Punkt 4
    • Punkt 5 lad os gøre denne vare lidt længere, så den går til næste linje

    Hver liste er simpelthen placeret inde individuelt element

    , og listens adfærd bestemmes ved hjælp af denne DIV. Grundregel, som gælder for alle DIV'er, er:

    Uden yderligere stylingregler vil listen i basis DIV se sådan ud:

    Positionering

    Nogle gange kan standardlisteindrykningen være for stor til dit design. Men ændringen er kun margin egenskaber eller polstring til et element

      Virker ikke for alle browsere. For at listen skal flyttes helt til venstre, skal du f.eks. ændre begge egenskaber: margin og polstring. Dette skyldes, at Internet Explorer og Opera opretter et venstre indrykning til listen ved hjælp af venstre margen, og Mozilla/Netscape bruger venstre polstring til dette.

      I det følgende eksempel er egenskaberne margin-venstre og polstring-venstre for et UL-element sat til 0:

      Bemærk venligst, at markørerne ligger uden for DIV-grænsen. Hvis beholderen ikke var en DIV, men et dokument, ville markørerne stå uden for browservinduet, dvs. ville forsvinde ude af syne. Hvis du ønsker, at markørerne skal ligge inden for DIV'ens grænser, langs dens venstre kant, skal du enten indstille egenskaben for venstre-polstring eller egenskaben venstre margin til "1em".

      Markører

      Lad os sige, at du havde brug for en liste med specielle kugler. Hvad lavede du før? Vi lavede en tabel, placerede et GIF-billede af markøren i en kolonne og flyttede det op og til højre i cellen. Den anden kolonne indeholdt tekst, der skulle have været i elementerne

    • . CSS giver dig nu mulighed for at bruge et billede som markør. Hvis browseren ikke understøtter dette CSS funktion(eller understøtter ikke grafik output), vil standardmarkøren blive brugt (eller den du angiver i dette tilfælde).

      Stilreglen ser sådan ud:

      ul (liste-stil-billede: url(bullet.gif); )

      Og browseren viser listen sådan her:

      For de browsere, der ikke understøtter grafikoutput, skal du tilføje følgende linje til reglerne:

      liste-stil-type: disk;

      Det billede, du vælger som markør, kan "krybe" ud over listens grænser. For at forhindre, at dette sker, skal du placere billedet inde i blokken

    • . For at gøre dette skal du tilføje følgende linje:

      liste-stil-position: inde;

      Alle tre erklæringer kan kombineres til én kort regel:

      ul (liste-stil: disk url(bullet.gif) inde;)

      hvilket er tilsvarende

      ul ( liste-stil-type: disk; liste-stil-billede: url(bullet.gif); liste-stil-position: inde; )

      Den resulterende liste vil se sådan ud:

      Det kan ske, at du har en liste, men du har ikke brug for punkttegn, eller du vil bruge en anden karakter som punkttegn. Endnu en gang kommer CSS dig til undsætning. Tilføj regelliste-stilen: ingen; og lav elementerne

    • "overhængende". Hele reglen vil se sådan ud:

      ul ( liste-stil: ingen; margin-venstre: 0; polstring-venstre: 1em; tekst-indryk: -1em; )

      Enten skal egenskaben venstre polstring eller egenskaben venstre margin have en værdi på 0, og den anden skal have en værdi på 1em. Ved at ændre denne egenskab kan du justere størrelsen af ​​indrykket fra din markør til en acceptabel. En negativ værdi i egenskaben text-indent får den første linje i hvert listeelement til at flytte til venstre og "overhænge" resten af ​​teksten.

      Vores næste liste vil være normal, kun standard HML-symbolet vil blive brugt som en markør, for eksempel ", som svarer til det afsluttende typografiske anførselstegn: ".

      Det skal her bemærkes, at Netscape6/7/Mozilla (og andre Gecko-afledte browsere) samt Opera kan generere indhold ved hjælp af :before pseudo-elementet fra CSS2-standarden. Lad os bruge denne funktion og automatisk generere symbolet "eller et andet symbol som en markør. På denne måde behøver vi ikke indtaste det manuelt i hvert LI-element. Hvis du bruger Opera-browseren eller Gecko-familien af ​​browsere, vil følgende CSS oprette den samme liste som den forrige uden at skulle tilføje noget ekstra til selve listen.

      #custom-gen ul li:before ( indhold: "0BB 020"; )

      Indholdsegenskaben kan indstilles til en tekststreng, en URL eller noget andet, herunder Særlige symboler. Hvis du har valgt et symbol som "", skal du angive det i egenskaben hexadecimal kode dette symbol. Det højre typografiske anførselstegn har koden 0BB (det andet tegn 020 er et mellemrum, tilføjet af æstetiske årsager). Det endelige resultat er vist nedenfor (se med Opera eller Mozilla/Netscape browser):

      Ordning af listen i en række

      Hvem sagde, at lister skulle gå lodret og formateres med markører til venstre? For eksempel vil du have en nummereret liste over links, men visuelt ønsker du, at listen skal ligne en lodret navigationslinje på siden. Eller lad os sige, at du vil have links til at køre vandret langs den øverste kant af siden.

      Dette gælder ikke kun for listen over links. Du skal muligvis angive flere gange i et afsnit (f.eks. en liste over bøger). Strukturelt set er det en liste, men før, hvis du gjorde det, ville listen opdele dit afsnit. CSS kommer dig til undsætning igen!

      Fordi denne liste ikke vises som noget separat på siden, jeg vil ikke lægge det i en base DIV som de tidligere lister. Denne gang vil opmærkningen se sådan ud: afsnit, liste, næste afsnit.

      Jeg kan allerede høre råbene: ”Din idiot! Vi troede, du ville lære os, hvordan man sætter lister inde i et afsnit, ikke mellem to afsnit."

      Og hertil vil jeg svare: ”Nå, ja, du har ret. Desværre tillader (X)HTML ikke, at lister placeres i et afsnit. Men med stilarter kan du gøre dette."

      For det første er her stilreglerne:

      #inline-list ( kant: 1px solid #000; margin: 2em; width: 80%; polstring: 5px; font-family: Verdana, sans-serif; ) #inline-list p (display: inline; ) #inline- list ul, #inline-list li (display: inline; margin: 0; polstring: 0; farve: #339; font-weight: fed; )

      Al kode er placeret i

      . Den indeholder altså et afsnit standard liste UL, efterfulgt af endnu et afsnit. UL-listen er blevet redigeret, så hvert punkt er efterfulgt af et komma og det sidste punkt er efterfulgt af et punktum.

      Resultatet ser sådan ud (listen er fremhævet med blåt):

      Ligesom i punkteksemplet ovenfor, kan vi bruge CSS til automatisk at generere kommaer og punktum. Hvis dine besøgende kun bruger Opera og Gecko browsere, har du intet at bekymre dig om. Stilreglerne ser således ud:

      #inline-list-gen ul li:after ( indhold: ", "; ) #inline-list-gen ul li.last:after ( indhold: "."; )

      Her bruger vi :after pseudo-elementet til at tilføje et komma i slutningen af ​​hvert listeelement, og tilføje et punktum ved hjælp af class="last". Resultatet bliver sådan her (husk, det virker kun i Opera eller Mozilla/Netscape):

      Navigation

      Som jeg sagde i begyndelsen, skal menuerne med links, som vi ser på hvert websted, designes som lister, hvilket er, hvad de i bund og grund er. Da vi ikke ønsker at se denne liste, som standardbrowseren viser den, bruger vi CSS til at foretage nogle kosmetiske ændringer. Vi ved allerede, at lister specifikt kan vises vandret (på én linje), og ikke kun lodret (som de vises som standard). Ved hjælp af styles kan markører fjernes, og du har en lang række muligheder for visuelt at adskille et listeelement fra et andet.

      Her er eksempler vandrette lister, placeret i samme base DIV med følgende regler.

      De to eksempler nedenfor bruger kun den samme UL uden lang tekst i sidste afsnit. Der er også tilføjet en ekstra klasse, der giver dig mulighed for at arbejde separat med en af ​​LI'erne på listen.

      Grænser

      Symbol | ofte brugt til at henvise til forskellige muligheder valg. Det er naturligt at bruge det på en menu. Lad os simulere dette symbol ved at bruge grænserne for LI.

      #pipe ul ( margin-left: 0; polstring-venstre: 0; display: inline; ) #pipe ul li ( margin-left: 0; polstring: 3px 15px; kant-venstre: 1px solid #000; listestil: ingen; display: inline;

      Reglerne kan ændres for at få listen til at se ud som bogmærker:

      #tabs ul ( margin-left: 0; padding-left: 0; display: inline; ) #tabs ul li ( margin-left: 0; margin-bottom: 0; polstring: 2px 15px 5px; kant: 1px solid #000 ; liste-stil: ingen; display: inline;

      Bemærk: Denne teknik blev foreslået af Randal Rust og senere forbedret af abonnenter på css-discuss-mailinglisten

      Kædeled

      En anden type link, der normalt er placeret vandret på en webside, er de velkendte brødkrumme-links. Disse links viser tydeligt, hvor du er nu i sitehierarkiet – hele din vej fra hjemmeside til den aktuelle sektion eller side. Hvis du virkelig ønsker at gøre din sides kode semantisk korrekt, bør denne type link styles som en række indlejrede lister, da hver sektion er en del af det forrige afsnit:

      • Hjem
        • " Produkter
          • » Computere
            • » Software

      som resultat får vi:

      Anvendelse af følgende regler:

      #bread (farve: #ccc; baggrundsfarve: #006; polstring: 3px; margin-bottom: 25px; ) #bread ul ( margin-left: 0; padding-left: 0; display: inline; border: none; ) #bread ul li ( margin-venstre: 0; polstring-venstre: 2px; kant: ingen; liste-stil: ingen; display: inline; )

      vi får dette:

      Igen kan tegnet """ (eller et hvilket som helst andet passende tegn) genereres automatisk ved hjælp af :before-pseudo-elementet i kombination med class="first"-klassen, så det første LI-element ikke har dette tegn.

      #bread-gen ul li:before ( indhold: "020 020 020 0BB 020"; farve: #ff9; ) #bread-gen ul li.first:before ( indhold: " "; )

      Endeligt resultat:

      Verden af ​​realiteter

      Jeg afslutter min artikel rigtigt eksempel, som bruger tricket beskrevet ovenfor. Vi tager en standard UL-liste med links og opretter dynamisk menu med rullende effekter. For at skabe en rullende effekt vil visuelle stilarter blive anvendt på A-elementerne, og UL- og LI-elementerne vil kun tjene som en strukturel ramme.

      Denne menu er faktisk et svar på et spørgsmål stillet af Michael Efford på css-discuss mailinglisten. Michael skabte nøjagtig den samme menu ved hjælp af tabeller, grafik og JavaScript. Han spurgte derefter på mailinglisten, om det samme kunne opnås ved hjælp af CSS.

      • Hjem
      • Skjulte kameraer
      • CCTV kameraer
      • Medarbejdertyveri
      • Nyttige tip
      • F.A.Q
      • Om os
      • Kontakt os

      Lad os se på stilarket regel for regel, og jeg vil forklare, hvorfor hver af dem er nødvendige.

      #button ( width: 12em; border-right: 1px solid #000; polstring: 0 0 1em 0; margin-bottom: 1em; font-family: "Trebuchet MS", "Lucida Grande", Verdana, Lucida, Geneve, Helvetica , Arial, sans-serif baggrundsfarve: #90bade;

      Den første regel er for #knappen DIV. Det definerer, hvor meget plads menuen vil optage, og skaber kontekst, så vi kan kontrollere adfærden af ​​links og listeelementer. Jeg foretrak at gøre menuen fleksibel og afhængig af browserindstillinger, så (næsten) alle værdier er angivet i "em"s. Inklusiv menubredde. Den sorte kant er taget fra Michaels originale design. Menuens store bundpolstring er lavet, så du kan se baggrunden for DIV. Igen blev dette gjort for at kopiere det originale design. Den nederste margen (margen) bruges til at adskille menuen fra det, der følger efter den. Alle farver er taget fra det originale design.

      #button ul ( liste-stil: ingen; margin: 0; polstring: 0; border: ingen; ) #button li ( border-bottom: 1px solid #90bade; margin: 0; )

      Her bestemte jeg, hvordan listen skulle se ud. Da alle vores listeelementer er links, og den rullende effekt kun er tilgængelig for links indtil videre, har jeg med vilje fjernet alle stilistiske regler fra listerne. Jeg har lige tilføjet en en pixel bred kant, hvis farve matcher baggrundsfarven på #button DIV. Denne kant fungerer som en adskiller mellem menupunkter. Det originale design brugte et separat billede til dette.