Css

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 27 maj 2020; verifiering kräver 71 redigeringar .
css
Förlängning .css
MIME -typ text/css
Utvecklaren CSS-arbetsgrupp [d]
publiceras 17 december 1996
Formattyp Stilmallsspråk
Standard(er) Nivå 1 (Rekommendation)
Nivå 2 (Rekommendation)
Nivå 2 Revision 1 (Rekommendation)
Hemsida w3.org/Style/CSS/drafts.csswg.org
_

CSS ( /siːɛsɛs/ engelska  Cascading Style Sheets  ) är ett formellt språk för att beskriva utseendet på ett dokument ( webbsida ) skrivet med ett märkningsspråk (oftast HTML eller XHTML ). Det kan också tillämpas på alla XML-dokument , som SVG eller XUL .

Översikt

Använder CSS

CSS används av webbsidors skapare för att definiera färger , typsnitt , stilar, placering av enskilda block och andra presentationsaspekter av utseendet på dessa webbsidor. Det huvudsakliga designmålet med CSS är att avskärma och separera beskrivningen av den logiska strukturen på en webbsida (vilket görs med HTML eller andra märkningsspråk ) från beskrivningen av webbsidans utseende (vilket nu görs med den formella CSS :en) språk). Denna separation kan öka tillgängligheten för ett dokument, ge större flexibilitet och kontroll över presentationen och minska komplexiteten och repetitiviteten i det strukturella innehållet.

Dessutom tillåter CSS att samma dokument presenteras i olika stilar eller utdatametoder , såsom skärmpresentation, tryckt presentation, röstläsning (med en dedikerad röstwebbläsare eller skärmläsare), eller när det visas av punktskriftsenheter . .

Sätt att inkludera CSS i ett dokument

CSS-regler kan finnas både i själva webbdokumentet , vars utseende de beskriver, och i externa filer som har tillägget .css . CSS-formatet är en textfil som innehåller en lista med CSS-regler och deras kommentarer.
CSS-stilar kan inkluderas eller bäddas in i webbdokumentet som de beskriver på fyra sätt:

<!DOCTYPE html> < html > < head > ..... < länk rel = "stylesheet" type = "text/css" href = "style.css" > </ head > < body > ..... </ body > </ html >
  • när stilfilen placeras separat från det överordnade dokumentet kan den inkluderas i dokumentet med en @import-sats på elementet <style>:
<!DOCTYPE html> < html > < head > ..... < style media = "all" > @ import url ( style . css ) ; </ style > </ head > </ html >
  • när stilar deklareras i ett dokument kan de inkluderas i elementet <style>, som faktiskt ingår i elementet <head>:
<!DOCTYPE html> < html > < head > ..... < style > body { color : red ; } </ style > </ head > < body > ..... </ body > </ html >
  • när stilar beskrivs i dokumentets brödtext kan de placeras i attributen för ett separat element
<!DOCTYPE> < html > < head > ..... </ head > < body > < p style = "font-size: 20px; color: green; font-family: arial, helvetica, sans-serif" > ..... </ p > </ body > </ html >

I de två första fallen tillämpas externa formatmallar på dokumentet och i det andra tillämpas interna formatmallar .

För att lägga till CSS till ett XML-dokument måste det senare innehålla en speciell länk till stilfilen:

<?xml-stylesheet type="text/css" href="style.css"?>

CSS-konstruktionsregler

I de första tre fallen av att lägga till CSS-stilar till ett dokument (se ovan), har varje CSS-regel från filen två huvuddelar - en väljare och ett deklarationsblock . Väljaren , placerad på vänster sida av regeln före "{", bestämmer vilka delar av dokumentet (eventuellt speciellt märkta) regeln gäller. Annonsblocket finns till höger om regeln. Den är placerad inom parentes och består i sin tur av en eller flera deklarationer separerade med ";". Varje deklaration är en kombination av en CSS-egenskap och ett värde separerat av ett ":". Väljare kan grupperas på samma rad avgränsade med kommatecken. I detta fall tillämpas egendomen på var och en av dem.

väljare , väljare { egenskap: värde ; egenskap: värde ; egenskap: värde ; }

I det fjärde fallet med att ansluta CSS till ett dokument (se lista), är CSS-regeln, som är värdet på stilattributet för elementet det gäller, en lista med deklarationer (" CSS-egenskap  : värde ") separerade med " ;".

Typer av väljare Universalväljare * { marginal : 0 ; stoppning : 0 _ } Taggväljare p { font- family : arial , helvetica , sans-serif ; } Klassväljare . notera { färg : röd ; bakgrundsfärg : gul _ font-weight : fet ; } Identifierare väljare # paragraph1 { margin : 0 ; } Attributväljare a [ href = "http://www.somesite.com" ] { font-weight : bold ; } Descendant selector (kontextväljare) div # stycke1 sid . notera { färg : blå ; } Barnväljare sid . note > b { färg : grön ; } . div { border : 1 px solid red ; stoppning - vänster : 20px } . title { font-size : 20 px ; bakgrundsfärg : röd _ } Syskonelementväljaren h1 + p { font-size : 24 px ; } Pseudo-klassväljare a : active { color : blue ; } Pseudoelementväljare p :: första bokstaven { font-size : 32 px ; }

Klasser och elementidentifierare

En klass eller identifierare kan tilldelas ett HTML-element genom elementets klass- eller id-attribut:

<!DOCTYPE html> < html > < head > < meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" > < title > Klass- och ID-väljare </ title > < style > sid . stor { font- family : arial , helvetica , sans-serif ; färg : röd _ } div # first { bakgrundsfärg : silver ; } </ style > </ head > < body > < div id = "first" > <!-- Detta är en grå bakgrunds-div stilad av id --> </ div > < p class = "big" > <! -- Detta är röd text --> </ p > </ body > </ html >

Huvudskillnaden mellan elementklasser och elementidentifierare är att en identifierare är för ett enda element, medan en klass vanligtvis tilldelas flera element samtidigt. Men moderna webbläsare tenderar att korrekt rendera flera element med samma ID. Skillnaden är också att flera klasser kan existera (när ett elements klass består av flera ord separerade med mellanslag). Detta är inte möjligt för identifierare.

Det är viktigt att notera följande skillnad mellan en identifierare och en klass: identifierare används ofta i JavaScript för att hitta ett unikt element i ett dokument.

Namnen på klasser och identifierare är, till skillnad från namnen på taggar och deras attribut, skiftlägeskänsliga.

Egenskaperna för klasser och identifierare ställs in med hjälp av lämpliga väljare. Dessutom kan den ställas in som en egenskap för klassen som helhet (i det här fallet börjar väljaren med ".", till exempel ".big") eller som en egenskap för själva identifieraren (i detta fall, selector börjar med "#", till exempel "#first" ), och egenskapen för något element i denna klass eller med denna identifierare.

I CSS, utöver klasserna som definierats av sidans författare, finns det också en begränsad uppsättning så kallade pseudo -klasser som beskriver utseendet på hyperlänkar med ett visst tillstånd i dokumentet, utseendet på det element på vilket inmatningen är fokuserad, och utseendet på element som är de första barnen till andra element. Det finns också fyra så kallade pseudoelement i CSS : den första bokstaven, den första raden, med speciella stilar före och efter elementet.

Arv. Cascading. CSS-stilprioriteringar.

Att tillämpa CSS på HTML-dokument är baserat på principerna för arv och kaskad . Arvsprincipen är att CSS-egenskaper som deklareras på förfäderelement nästan alltid ärvs av efterkommande element.

Principen för kaskadkoppling används när mer än en CSS-regel är associerad med något HTML- element samtidigt, det vill säga när det finns en konflikt mellan värdena för dessa regler. För att lösa sådana konflikter införs företrädesregler.

  • Webbläsarstilen har lägst prioritet;
  • Det näst viktigaste är stilen som ställts in av användaren av webbläsaren i dess inställningar;
  • Och stilen som ställts in direkt av sidans författare har högsta prioritet. Och vidare, redan i denna författares stil, är prioriteringarna inställda enligt följande:
    • Stilar som ett element ärver från sina förfäder i ett dokument har lägst prioritet;
    • Stilar som definieras i externa formatmallar som är bifogade till dokumentet har högre prioritet;
    • Ännu högre prioritet ges till stilar som ställs in direkt av alla tio typer av väljare (se underavsnittet "Väljartyper") som finns i dokumentets stilbehållare. Det är inte ovanligt att ett element är relaterat till, dess utseende specificeras av flera sådana väljare. Sådana konflikter mellan dem löses genom att beräkna specificiteten för varje sådan väljare och tillämpa dessa väljare på det givna elementet i fallande ordning efter deras specificitet. Specificitetsberäkningen kommer att beskrivas nedan.
      • Väljarnas specificitet är indelad i 4 grupper - a, b, c, d:
        • om stilen är inline (definierad som style="...", då а=1, annars a=0) ;
        • värdet bär lika med antalet identifierare (annars — id=" ", de börjar med #) i väljaren;
        • värdet cär lika med antalet klasser (class=" ", de börjar med .), pseudoklasser (de börjar med :t.ex. a:hover) och attributväljare ( input[type="text");
        • värdet där lika med antalet elementtypväljare ( h1 { color: blue; }) och pseudokodelement ( p::first-line { color: blue; }). Det resulterande värdet konverteras sedan till ett tal (vanligtvis i decimal). En väljare med ett högre specificitetsvärde har också högre prioritet.
      • Specificitetsberäkningstabell [1] :
Väljare a, b, c, d siffra
spänna 0, 0, 0, 1 ett
div.klass 0, 0, 1, 1 elva
#id .klass 0, 1, 1, 0 110
div span 0, 0, 0, 2 2
.klass 0, 0, 1, 0 tio
#id span 0, 1, 0, 1 101
  • Men stilarna som deklarerats av sidans författare eller användaren , med hjälp av den medföljande regeln , har högsta prioritet !important. Om det finns flera sådana egenskaper, prioriteras först och främst stilarna som ställts in av författaren eller användaren , och för de återstående egenskaperna, som kommer att ställas in av sidans författare, kommer det att vara nödvändigt att bestämma deras särdrag enligt principerna beskrivna ovan, och tillämpa dessa egenskaper i fallande ordning efter dessa specificiteter.

Exempel på stilmall

Ett exempel på en stilmall (i den här formen kan den antingen placeras i en separat .css-fil eller ramas in med taggar <style>och placeras i "huvudet" på själva webbsidan som den verkar på):

p { font- family : arial , helvetica , sans-serif ; } h2 { font-size : 20 pt ; färg : röd _ bakgrund : vit _ } . notera { färg : röd ; bakgrundsfärg : gul _ font-weight : fet ; } p # paragraph1 { padding-left : 10 px ; } a : hover { text-decoration : none ; } # nyheter p { färg : blå ; } [ typ = "knapp" ] { bakgrundsfärg : grön ; }

Här är sju CSS-regler med väljarna p, h2, .note, p#paragraph1, a:hoveroch . #news p[type="button"]

  1. Den första regeln tilldelas ett HTML-element p( stycke ) - stil tilldelas. Stycken kommer att visas i Arial eller, om ett sådant typsnitt inte är tillgängligt, Helvetica eller Sans-serif, annars, i ett annat typsnitt i denna familj.
  2. Den andra regeln tilldelas HTML-elementet h2(rubrik på andra nivån). Den andra nivåns rubrik kommer att visas i rött på en vit bakgrund med en förstorad storlek .
  3. Den tredje regeln kommer att gälla för alla element vars attribut classär "not". Till exempel till stycket:<p class="note">Этот абзац будет выведен полужирным шрифтом красного цвета на жёлтом фоне. </p>
  4. Den fjärde regeln kommer endast att gälla för elementet pvars attribut idär lika med paragraph1. Ett sådant element kommer att ha en inre utfyllnad på 10 pixlar (utfyllnad).
  5. Den femte regeln definierar svävningsstilena  för hyperlänkelement . Som standarda är texten i element understruken i de flesta webbläsare . Den här regeln tar bort understrykningen när muspekaren är över dessa element.
  6. Den sjätte regeln gäller för element psom finns inuti ett element med ett attribut idlika med " news" (#news p är ett typiskt fall för en barnväljare, se den 5:e listposten ovan ).
  7. Den sjunde regeln gäller för alla element som har ett attribut typelika med button. Till exempel kommer denna regel att tillämpas på elementet <input type="button">eller <button type="button">Кнопка</button>(normal knapp) och ändra dess bakgrundsfärg till grön.

CSS-layout

Innan tillkomsten av CSS gjordes webbsidestilen uteslutande i HTML , direkt i innehållet i ett dokument. Men med tillkomsten av CSS blev det möjligt att i grunden separera innehållet och presentationen av ett dokument. På grund av denna innovation blev det möjligt att enkelt tillämpa en enda designstil för en massa liknande dokument, samt snabbt ändra denna design.

Fördelar:

  • Flera siddesigner för olika visningsenheter. Till exempel, på en skärm kommer designen att utformas för en stor bredd, under utskrift kommer menyn inte att visas, och på en PDA och mobiltelefon kommer menyn att följa innehållet.
  • Minska laddningstiden för webbplatssidorna genom att överföra datapresentationsreglerna till en separat CSS-fil. I det här fallet laddar webbläsaren bara ned dokumentstrukturen och data som lagras på sidan, och representationen av dessa data laddas bara ned av webbläsaren en gång och kan cachelagras .
  • Enkel efterföljande designändringar. Du behöver inte redigera varje sida, bara ändra CSS-filen.
  • Ytterligare designalternativ. Med hjälp av CSS-layout kan du till exempel göra ett textblock som resten av texten lindar runt (till exempel för en meny) eller göra menyn alltid synlig när du rullar på sidan.

Brister:

  • Olika visningslayouter i olika webbläsare (särskilt äldre) som tolkar samma CSS-data olika.
  • Det är ofta nödvändigt i praktiken att fixa inte bara en enstaka CSS-fil, utan även HTML-taggar som är associerade med CSS-väljare på ett komplext och immateriellt sätt, vilket ibland förnekar enkelheten att applicera enstaka stilfiler och avsevärt ökar redigerings- och testtiden.

Historien om skapandet och utvecklingen av CSS

CSS är en av ett brett spektrum av teknologier som stöds av W3C och som gemensamt kallas "webstandarder" [2] . På 1990-talet blev behovet av att standardisera webben tydligt, att skapa någon form av enhetliga regler som programmerare och webbdesigners skulle designa sajter efter. Så här dök HTML 4.01 och XHTML- språken ut och CSS-standarden.

I början av 1990-talet hade olika webbläsare sina egna stilar för att visa webbsidor. HTML utvecklades mycket snabbt och kunde tillfredsställa alla behov av informationsdesign som fanns på den tiden, så CSS fick inte bred acceptans vid den tiden.

Termen Cascading Style Sheets myntades av Haakon Lee 1994. Tillsammans med Bert Bos började han utveckla CSS.

Till skillnad från många stilspråk som fanns vid den tiden, använder CSS förälder-till-barn-arv, så en utvecklare kan definiera olika stilar baserat på redan definierade stilar.

I mitten av 1990-talet började World Wide Web Consortium ( W3C ) visa intresse för CSS, och i december 1996 utfärdades CSS1-rekommendationen.

Nivå 1 (CSS1)

W3C-rekommendation, antagen 17 december 1996 , ändrad 11 januari 1999 [3] . Bland funktionerna i denna rekommendation:

  • Teckensnittsalternativ. Möjlighet att ställa in typsnitt och teckenstorlek, såväl som dess stil - vanlig, kursiv eller fetstil.
  • Färger. Specifikationen låter dig definiera färger för text, bakgrunder, ramar och andra sidelement.
  • textattribut. Möjlighet att ställa in teckenavstånd, ordavstånd och radhöjd (d.v.s. radindrag)
  • Justering för text, bilder, tabeller och andra element.
  • Blockegenskaper som höjd, bredd, stoppning ( ) och stoppning padding( margin) och kanter. Specifikationen inkluderade också begränsade medel för positionering av element, såsom floatoch clear.

Nivå 2 (CSS2)

W3C-rekommendation, antagen 12 maj 1998 [4] . Baserat på CSS1 med bibehållen bakåtkompatibilitet med några få undantag. Lägger till funktionalitet:

  • Blocklayout. Relativ, absolut och fast positionering dök upp. Låter dig styra placeringen av element på sidan utan tabelllayout .
  • Medietyper. Låter dig ställa in olika stilar för olika media (t.ex. monitor , skrivare , PDA ).
  • Ljudstilar. Anger röst, volym etc. för ljudmedia (till exempel för blinda webbplatsbesökare).
  • sidmedia. Tillåter till exempel att ställa in olika stilar för element på jämna och udda sidor när de skrivs ut.
  • Avancerad mekanism för väljare.
  • Pekare.
  • Genererat innehåll. Låter dig lägga till innehåll som inte finns i källdokumentet före eller efter det önskade elementet.

W3C stöder inte längre CSS2 och rekommenderar att du använder CSS2.1

Nivå 2 revision 1 (CSS2.1)

W3C-rekommendation, antagen 7 juni 2011 .

CSS2.1 är baserad på CSS2. Förutom att fixa buggar har vissa delar av specifikationen ändrats i den nya versionen, och en del[ vad? ] och helt borttagen. De borttagna delarna kan komma att läggas till CSS3 i framtiden.

Nivå 3 (CSS3)

CSS3 ( Engelska  Cascading Style Sheets 3  - cascading style sheets av tredje generationen ) är en aktivt utvecklad CSS- specifikation . Det är ett formellt språk som implementeras med ett märkningsspråk . Den största revisionen jämfört med CSS1, CSS2 och CSS2.1. Huvudfunktionen hos CSS3 är möjligheten att skapa animerade element utan användning av JS [5] , stöd för linjära och radiella gradienter, skuggor, utjämning och mer.

Det används främst som ett sätt att beskriva och utforma utseendet på webbsidor som är skrivna med HTML- och XHTML -markeringsspråken , men kan också användas på alla XML-dokument , som SVG eller XUL .

Utvecklingsversion (lista över alla moduler) [6] .

Till skillnad från tidigare versioner är specifikationen uppdelad i moduler, vars utveckling och utveckling utförs oberoende. CSS3 bygger på CSS2.1, utökar befintliga egenskaper och värden och lägger till nya.

Innovationer, som börjar med små, som rundade hörn av blocken, slutar med transformation ( animation ) och, möjligen, införandet av variabler [7] [8] .

Nivå 4 (CSS4)

Utvecklat av W3C sedan 29 september 2011 [9] [10] .

CSS4-moduler bygger på CSS3 och lägger till nya egenskaper och värden till dem. Samtliga finns hittills i form av utkast (arbetsutkast).

Till exempel:

Stöd för CSS-webbläsare

De mest fullständiga stöd för CSS-standarden är webbläsare som körs på Gecko ( Mozilla Firefox , etc.), WebKit ( Safari , Arora , Google Chrome ) och Presto (Opera) [11] -motorer.

Den tidigare mest använda webbläsaren [12] Internet Explorer 6 stöder inte fullt ut CSS [13] .

Släppt sju år senare förbättrade Internet Explorer 7 avsevärt nivån av CSS-stöd [14] [15] , men innehöll fortfarande ett betydande antal buggar [16] .

Internet Explorer 8 använder en ny motor som fullt ut stöder CSS 2.1 och delvis stöder CSS 3 [17] .

För att testa webbläsarstöd för webbstandarder, inklusive olika delar av CSS-standarden, utvecklades Acid -testet .

Olika blockmodeller

CSS-standarderna från W3C använder en modell där en egenskap widthdefinierar bredden på lådans innehåll utan att inkludera utfyllnad eller kanter. Tidiga versioner av Internet Explorer (4 och 5) implementerade sin egen modell där bredd definierar avståndet mellan boxkanter, inklusive utfyllnad ( padding) och kanter ( border). Förutom Internet Explorer 5 förstås denna modell även av webbläsarna Netscape 4 och Opera 7. Stöd för standardmodellen W3C dök endast upp i IE i den sjätte versionen.

Den kommande CSS3-standarden introducerade en egenskap box-sizingmed värden content-boxför att indikera användningen av W3C-standardmodellen och border-boxför att använda IE 5-modellen för att lösa detta problem.

I Mozilla- webbläsaren , med stöd av den här egenskapen, under sitt eget "arbetande" namn -moz-box-sizing, introducerades ett annat värde - padding-box, vilket skapade en tredje boxmodell, där width storleken på innehållet och indragen i blocket är, inte inklusive ram.

CSS-filter

Skillnader i implementeringen av CSS av olika webbläsare tvingar webbutvecklare att leta efter lösningar på hur man får alla webbläsare att rendera sidan på samma sätt. CSS-filter (även ofta kallade CSS-hack) låter dig selektivt tillämpa stilar på olika element. Till exempel är Internet Explorer 6 känt för att genomdriva regler som använder vyväljare (ett filter känt som " star html bug "). För att W3C- och IE-boxmodellen som körs i Quirks-läge ska visa en 100px bred ruta med 10px-utfyllnad, kan du skriva kod så här: * html селектор#someblock

/* W3C-modell - 80px innehållsbredd och 10px stoppning på varje sida */ # someblock { width : 80 px ; stoppning : 10px _ _ } /* Följande regel kommer endast att gälla för IE6. */ * html # someblock { bredd : 100 px ; stoppning : 10px _ _ }

Ett annat sätt att selektivt genomdriva regler för Internet Explorer är villkorliga kommentarer .

Säkerhet

Alla versioner av Internet Explorer som stöddes 2010 var sårbara: när webbläsaren bearbetar cascading styles (CSS) kan oinitierat minne dyka upp, som sedan används för att fjärrstarta skadlig kod på användarens dator [18] .

CSS Framework

CSS Framework (även webbdesignramverk ) är ett förberett CSS-bibliotek skapat för att förenkla arbetet för layoutdesignern, påskynda utvecklingen och eliminera maximalt möjliga antal layoutfel (kompatibilitetsproblem mellan olika webbläsarversioner etc.). Precis som bibliotek med programmeringsspråk för skript, är CSS-ramverk, vanligtvis i form av en extern .css-fil, "anslutna" till projektet (läggs till i rubriken på webbsidan), vilket tillåter en programmerare eller designer som är oerfaren i krångligheterna med layout för att skapa en html-layout korrekt.

CSS-tillägg

När du lägger ut sidor behöver du ofta använda samma värde många gånger: samma färg, samma typsnitt. Och om detta värde behöver ändras, då måste det ändras på många ställen.

För att lösa dessa problem och påskynda utvecklingen finns det flera tillägg (förprocessorer) av CSS-språket. Tillägg i den meningen att CSS-koden är giltig kod för ett tillägg, men inte vice versa. För att den "utökade CSS"-koden ska förvandlas till en vanlig CSS-fil som uppfattas av webbläsaren måste du kompilera den. Sammanställning kan vara av flera typer:

  • under sidstart på klientsidan (med JavaScript )
  • under sidstart på serversidan
  • under webbplatslayout med hjälp av en speciell kompilator

Exempel på CSS-tillägg (förprocessorer):

Se även

Anteckningar

  1. McFarland, 2017 , sid. 126.
  2. Dave Shea, Molly E. Holtzschlag. Filosofi för CSS-design. / Per. från engelska. A. Slinkina. — M.: NT Press, 2005. — 312 s.: ill.
  3. Cascading Style Sheets, nivå 1 . Hämtad 16 juni 2006. Arkiverad från originalet 9 februari 2011.
  4. Cascading Style Sheets, nivå 2 CSS2-specifikation . Tillträdesdatum: 9 mars 2011. Arkiverad från originalet 16 januari 2011.
  5. Enkel CSS3-animering med Animate.css . Hämtad 18 september 2018. Arkiverad från originalet 18 september 2018.
  6. W3C : CSS: aktuellt arbete Arkiverat 3 mars 2011 på Wayback Machine , CSS 3, etc.
  7. CSS3: css-variabler är en dålig idé. Låt oss bara ringa andra väljare. Arkiverad 2 januari 2010 på Wayback Machine // Rip's Domain
  8. CSS-variabler Arkiverade 5 april 2010 på Wayback Machine // dave-woods.co.uk
  9. Väljare nivå 4 (nedlänk) . W3.org (29 september 2011). Arkiverad från originalet den 30 maj 2012. 
  10. Upptäck vad som är nytt i CSS 4 | webmonkey | Wired.com (inte tillgänglig länk) . Webmonkey (26 oktober 2011). Arkiverad från originalet den 30 maj 2012. 
  11. Stöd för webbläsarstandarder . Hämtad 11 januari 2008. Arkiverad från originalet 14 april 2020.
  12. Mozillas globala användningsandel för Firefox växer fortfarande enligt OneStat.com . Hämtad 11 januari 2008. Arkiverad från originalet 26 februari 2021.
  13. Innehåll och webbläsarkompatibilitet . Tillträdesdatum: 11 januari 2008. Arkiverad från originalet 11 januari 2008.
  14. Detaljer om våra CSS-ändringar för IE7 Arkiverad 30 juli 2008 på Wayback Machine IEBlog
  15. Cascading Style Sheet-kompatibilitet i Internet Explorer 7 Arkiverad 1 februari 2008 på Wayback Machine MSDN
  16. Internet Explorers konstiga och underbara värld (nedlänk) . Tillträdesdatum: 11 januari 2008. Arkiverad från originalet 13 januari 2008. 
  17. CSS-kompatibilitet och Internet Explorer Arkiverad 29 december 2010 på Wayback Machine MSDN
  18. Microsoft: Alla versioner av Internet Explorer sårbara för hackare . Hämtad 2 januari 2011. Arkiverad från originalet 3 januari 2011.

Litteratur

  • David Sawyer McFarland. Ny stor bok CSS = CSS: The Missing Manual. - St. Petersburg: Piter , 2017. - 720 sid. - 1000 exemplar.  - ISBN 978-5-496-02080-0 .
  • Ed Tittel, Jeff Noble. HTML, XHTML & CSS For Dummies, 7th Edition = HTML, XHTML & CSS For Dummies, 7th Edition. - M . : "Dialektik" , 2011. - 400 sid. - ISBN 978-5-8459-1752-2 .
  • Stephen Schafer. HTML, XHTML och CSS. The User's Bible, 5th Edition = HTML, XHTML och CSS Bible, 5th Edition. - M . : "Dialektik" , 2011. - 656 sid. - ISBN 978-5-8459-1676-1 .

Länkar

Engelskspråkiga resurser

Ryska språkresurser