… #gnu + p Syskonselektor
…
…
.lama > em Barn-selektor
…
#gnu > .zoo Barn-selektor
…
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet27 WEBBUTVECKLING 1 ‐ ARBETSBOK
Uppgift 4E – färg och font Ladda ner filen kap‐4‐e.html från webbteknik.nu. Dess HTML‐kod får du inte ändra, men med hjälp av CSS ska du skapa utseendeet på bilden nedan. Ladda ner filen kap‐4‐e.css och jobba vidare i den. Tips: Börja med att analysera HTML‐koden i ett utvecklingsverktyg. Lite CSS‐kod är redan gjord. Du kan bygga på med fler deklarationer i de befintliga reglerna, eller skapa helt nya regler. Jobba med CSS‐editorn i Firefox eller spara och uppdatera ofta – efter varje ändring! Validera din CSS‐kod om du stöter på problem och när du är klar.
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet28 WEBBUTVECKLING 1 ‐ ARBETSBOK
Skapa först en grundstil för typsnitt och bakgrundsfärer, genom att lägga till detta i reglerna för och
. o lighslategrey för o azure för o sans‐serif Skapa en regel hör med en typselektor o purple som textfärg o text‐align Lägg till kantlinje för divvarna. 1px bred, solid, purple. Lägg till rundade hörn för divvarna. 5px. Texten i första divven ska vara darkred. Använd en id‐selektor. Texten i andra divven ska vara darkgreen. Använd en id‐selektor. Texten i det andra stycket i båda divvarna ska vara larger. Använd en klass‐selektor. Texten i det tredje stycket i båda divvarna ska vara smaller. Använd en klass‐selektor som grund för en angränsande syskon‐selektor. Texten i sista stycket i båda divvarna ska vara bolder. Använd samma selektor men lägg på ytterligare ett ”+ p”, d v s ange syskonet till första syskonet. Texten i sista stycket i andra divven ska vara marginaljusterad, justify. Använd selektorn #bob > .two + p + p (syskon som är syskon till en klass som är barn till en id). Färgen på länktexten är webbläsarens default. Den hoppar vi över. Länkarna i andra divven ska vara genomstrukna, line‐through. Använd en avkomlingsselektor. Länken i andra stycket i andra divven ska däremot vara underline overline. Använd en selektor som anger barn till ett barn. Spara. Validera. Åtgärda alla fel. Spara. Du är klar! Överkurs: För Firefox bara (än så länge, våren 2012) ska denna länktexts över‐ och understrykning vara orange och double. Git‐användare? ”Comitta” och pusha!
Guiden ovan fungerar till stor del som en stilguide (se avsnitt 2.3.4 i Läroboken).
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet29 WEBBUTVECKLING 1 ‐ ARBETSBOK
4.10 Externa CSS‐filer
26) Hur länkar du in en extern CSS‐fil?
......
27) Varför bör man använda externa CSS‐filer?
Håller sig till DRY-regeln. En fil styr alla sidor på hela webbplatsen......
Uppgift 4F – DOM‐trädet Titta på bilden av ett DOM‐träd i avsnitt 4.10 i läroboken. Rita motsvarande DOM‐träd för den kod du skrev i uppgift 4C. (Plats att rita.)
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet30 WEBBUTVECKLING 1 ‐ ARBETSBOK
5 EN FÖRSTA SIDA
Uppgift 5 Du ska nu skapa sidan för läxhjälpen, genom att följa genomgången i läroboken. Börja med att skapa en egen undermapp för läxhjälpen. Kalla mappen laxhjalpen. Spara sidan som index.html – startsidor heter så. Kalla CSS‐filen laxhjalpen.css. För att du ska slippa skriva all text, så kan du ladda ned en start av dessa från http://webbteknik.nu/.
Du lär dig bäst i denna övning om du sparar och uppdaterar sidan efter varje moment. Använder du CSS‐redigeraren i Firefox, så ser du designen växa fram i realtid. Validera så fort du stöter på problem och när du är klar.
(Github‐användare? Committa efter varje avsnitt. Pusha när du är klar.)
Lura inte dig själv genom att bara läsa eller kopiera av någon annans kod. Detta är inget du ska ha ”avverkat”. Du lär dig genom att se hur din kod får effekt.
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet31 WEBBUTVECKLING 1 ‐ ARBETSBOK
6 TECKENKODNING OCH FONTER
6.1 Äldre teckenkodning
1) Vad för slags tecken är de 32 första (0‐31) samt tecken 127?
Kontrolltecken ......
2) Vad bör man göra med dessa tecken om man bygger en CMS?
Stoppa alla utom CR och LF ......
3) Vilka begränsningar har US_ASCII?
Funkar inte utanför USA/England. Inga åäö, û, etc. Inga CJK-tecken......
4) Hur lagras radslut på Windows, respektive Mac OS X, Unix och Linux?
Windows använder CR+LF, de andra bara LF ......
5) ISO‐8859‐1 och Windows 1252 är mycket snarlika. Under vilka namn kan dessa mer uppträda?
Latin-1, (ISO-8859-15), Win-1252, ANSI ......
6) Vad innebär det att en teckenkodning är ASCII‐kompatibel?
Att de 128 första tecknen kodas likadant som i US_ASCII......
6.2 Entiteter
7) Vad är entiteter?
Namngivna tecken. &-kod-; Kan skrivas som med US-ASCII......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet32 WEBBUTVECKLING 1 ‐ ARBETSBOK
8) På vilka tre sätt kan man skriva entiteter? Exemplifiera!
Med namn: & Decimalt: & Hexadecimalt: " ......
9) På vilka fyra tecken kräver att de skrivs som entiteter, eftersom de har specialfunktion i HTML? Vilka är deras namngivna entiteter?
< (mindre än) = < > (större än) = > & = & " = " ......
6.3 Unicode
10) Vad menas med glyf?
Meningsbärande symboler, inkl. bokstäver, siffror, etc......
11) Vad menas med tecken? Vad för egenskaper har de?
Själva innebörden av en glyf – ”abstrakta representationen”...... De har ett namn och en kodpoäng. De sorteras i en tabell......
12) Vad menas med teckenkodning?
Hur tecken lagras och skickas i datorn. Vilken sekvens av nollor och ...... och ettor som motsvarar ett tecken......
13) Vilka teckenkodningar finns för Unicode?
UCS-2, UCS-4, UTF-8, UTF-16, UTF-32, etc......
14) När man i http och HTML anger charset, så används inom Unicode ordet…?
encoding ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet33 WEBBUTVECKLING 1 ‐ ARBETSBOK
15) Men när man i http talar om encoding så avses…?
Komprimering, gzip och liknande ......
6.4 Ange teckenkodning och annan content‐type (MIME)
16) Hur kan man ange teckenkodning i http och HTML? Vad bör man tänka på för var och en av dessa?
Som http-huvud. Styrs av serverns konfigurationsfiler eller ...... anges med server-skript...... Med elementet . Funkar bara om filen läses från ...... Filsystemet lokalt, men är också en signal till andra utvecklare...... Med Byte Order Mark (BOM) – men det är dumt...... Med en XML-deklaration: ......
17) Vilka två delar utgör en MIME‐deklaration?
Råformat/dataspråk eller huvudtyp/kodek ......
6.5 Fonter
18) Vad är en font?
Beskrivning av ett typsnitts utseende, i detalj ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet34 WEBBUTVECKLING 1 ‐ ARBETSBOK
19) Vad är nedladdningsbara typsnitt?
Font-beskrivningar som hämtas av webbläsaren @font-face ...... men för den skull inte installeras i operativsystemet......
20) Vad är och hur fungerar en font‐stack i CSS?
En uppräkning snarlika font-familjer. Webbläsaren använder den ...... första som den kan......
21) Vilka är de fem generiska font‐familjerna och vad utmärker dem?
Serif – har klackar, blir oftast Times New Roman ...... Sans-serif – saknar klackar, blir oftast Arial ...... Monospace – alla tecken lika breda, blir ofta Courier New ...... Cursive – ska likna handstil. Opålitlig...... Fantasy – dekorativa glyfer. Opålitlig......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet35 WEBBUTVECKLING 1 ‐ ARBETSBOK
7 HTML HISTORIK OCH TEORI
7.1 HTML historik och versioner Historian hjälper dig förstå samband och sätta enskilda artiklar i perspektiv. Det finns gott om "tutorials" och "tips" kvar från de sista 15 åren. Utan kännedom om hur webben utvecklats blir det omöjligt att avgöra om de är bra eller dåliga.
1) Vem är upphovsman till webben (HTML och http)?
Tim Berners-Lee ......
2) Varför hade HTML 1.0 inte några funktioner att styra utseende?
Därför att webbläsarna inte var grafiska i början ......
3) Vilken var den första populära grafiska webbläsaren?
Mosaic ......
4) Vilken var den populäraste webbläsaren under 90‐talet?
Netscape Navigator ......
5) Vilken version av HTML är den första som gjordes med separation av innehåll från design i åtanke?
HTML 4 ......
6) När publicerades CSS 1.0?
1996 ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet36 WEBBUTVECKLING 1 ‐ ARBETSBOK
7) HTML 4 finns i tre versioner. Vilka, och vad är deras syfte?
Strict – förbjuder många presentationsattribut och element ...... Transitional – mjukare övergång om man hade gammal kod ...... Frameset – för frames, iframes och attributet target ......
8) XML har "drakonisk" felhantering. Vad menas med det?
Att all vidare behandling av koden avbryts vid minsta lilla fel ......
9) XML har betydligt snävare och mer detaljerade syntaxregler än HTML. Ge minst 5 exempel på detta.
Skillnad på VERSALER och gemener ...... Inga tomma elelement, inga implicita element, ingen implicit stängning ...... Korrekt nästling krävs. Entiteter måste skrivas korrekt...... Attribut måste ha värden och de måste ha citationstecken ...... Attribut måste ha värden och värdena måste ha citationstecken ......
10) Vad är default teckenkodning i HTML respektive XML?
Win-1252 för HTML, UTF-8 för XML ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet37 WEBBUTVECKLING 1 ‐ ARBETSBOK
11) Vad är XHTML? På vad sätt skiljer sig XHTML från HTML?
XHTML är HTML med XML syntax, d v s element och attribut är ......
desamma och har samma betydelse (identisk semantik), men allt måste ......
skrivas enligt XML:s strikta regler. XHTML stödjer namnrymder...... XHTML default teckenkodning är UTF-8......
12) Vilka var nyheterna i XHTML 1.1?
Uppdelningen i moduler (meningslös). Stöd för Ruby-markup......
13) Vad hände med den planerade standarden XHTML 2.0?
Den var inte bakåtkompatibel och utelämnade många önskemål ...... Detta gjorde att XHTML blev DOA (dead on arrival) ......
14) Vad menas med ”äkta XHTML”?
XHTML skickad med en MIME-typ som gör att den faktiskt tolkas ...... som just XML, med all dess strikthet, stöd för namnrymder, etc......
15) Varför bildades WhatWG?
Mozilla, Opera och Apple ville vidareutveckla HTML, men W3C sa (då) ...... nej. WhatWG blev en alternativ organisation. Man var också missnöjda ...... med W3C:s byråkrati och långsamma arbetstakt ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet38 WEBBUTVECKLING 1 ‐ ARBETSBOK
16) En slags kuggfråga: Vad menas med HTML5?
(Det beror på...) ...... Kolla http://www.zeldman.com/2010/08/03/html5-fuzzies/ och ......
......
17) Sett ut webbläsarens perspektiv, hur många versioner av HTML finns det?
En enda (eller möjligen två, om man räknar XHTML som en egen) ......
18) Vilka tre renderingslägen finns i de flesta webbläsare?
Quirks mode, Almost Standards Mode, Standards Mode ......
19) Varför är det viktigt att ange en bra doctype?
Annars hamnar du i Quirks Mode eller Almost Standards Mode ......
20) Vad gör följande rad HTML?
Den gör så att den mest moderna “motorn” används av IE...... Annars är det risk att IE låtsas vara en äldre version av sig själv......
7.2 Mer om HTML
21) Vad är ett booleskt attribut?
Attribut som kan finnas (= true) eller inte finnas. Kan förkortas......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet39 WEBBUTVECKLING 1 ‐ ARBETSBOK
22) Vad är ett tomt element?
Element som inte kan ha textinnehåll. Saknar sluttagg......
23) Ge 10 exempel på tomma element?
......
......
......
......
......
......
24) Vad gör elementet ?
Styr utgångspunkten för relativa länkar ......
25) Vad gör elementet ?
Break = radbrytning ......
26) Vad gör elementet
? preformatted = bevarar whitespace (tabb, space, newline) ......
27) Vad gör elementet
? Horizontal ruler, thematic break ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet40 WEBBUTVECKLING 1 ‐ ARBETSBOK
Uppgift 7A – Använd och
Skriv några rader HTML‐kod, där du på ett bra sätt använder bl a , , , , och .
Uppgift 7B – Från HTML till XHTML Skriv om dessa rader HTML‐kod till XHTML. Kom ihåg att XHTML varken har implicita element eller implicit stängning av element. Du behöver inte bry dig om att bevara tekniskt identisk whitespace, utan skriv i stället snygg kod. Teckenkodningen står inte i HTML‐koden. Det ska vara samma efter konverteringen till XHTML.
Tips: Namnrymden för XHTML skrivs xmlns="http://www.w3.org/1999/xhtml"
Koden du ska skriva om:
HTML till XHTML HTML till XHTML Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet.
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet41 WEBBUTVECKLING 1 ‐ ARBETSBOK
8 CSS HISTORIK OCH TEORI
8.1 CSS Historik och versioner
1) Vem är upphovsman till CSS?
Håkon Wium-Lie (och i viss mån Bert Bos + det fanns alternativa idéer från andra) ......
2) När publicerades rekommendationen för CSS 2.0?
1998 (den var dock buggig och orealistisk) ......
3) Varför skapades CSS 2.1?
För att CSS 2.0 inte stämde med verkligheten och till vissa delar inte ...... ens var tekniskt möjlig att implementera ......
4) Vilket år började CSS‐baserad layout slå igenom på allvar?
2003 ......
5) Vad innebär det att en CSS‐egenskap eller ett CSS‐nyckelord har prefix?
Prefix används för experimentella implementationer...... När en specifikation har blivit stabil, ska de tas bort......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet42 WEBBUTVECKLING 1 ‐ ARBETSBOK
6) Kan man använda CSS 3 idag?
Ja. Delvis. Somliga moduler är helt stabila (selectors, colors) ...... Andra moduler är till stor del stabila (fonts, gradients, transforms)...... Med progressive enhancement kan man använda också nya saker! ......
8.2 Grundfrågor om CSS
7) Vilka är fördelarna med att länka in CSS med elementet ?
Man bryter inte mot DRY. Parallell nedladdning av CSS och HTML......
8) CSS har ett antal måttenheter. Vilka är de vanligaste? Beskriv var och en med en mening.
% (procent) - i förhållande till föräldraelementet eller det ärvda ...... värdet (font-size) ...... px (pixlar) - en bildpunkt på skärmen - men CSS-pixel inte alltid ...... fysisk pixel ...... cm, mm, in (inch/tum) - funkar mindre bra på skärm ...... pt (points), pc (pica) – font-mått för tryck, inte skärm ...... em - radhöjden med aktuell font ...... ex - höjden på bokstaven lilla x
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet43 WEBBUTVECKLING 1 ‐ ARBETSBOK
...... ch - bredden på siffran noll (dåligt stöd – sommaren 2012) ...... rem - radhöjden på root-elementet (dåligt stöd – sommaren 2012) ...... vw, vh - viewport width, viewport height (dåligt stöd – sommaren 2012) ...... vm - Math.min(vw, vh) (dåligt stöd – sommaren 2012) ...... s, ms - sekunder, millisekunder – för animering ...... deg - degree (grader, 360 på ett varv) – för transformation ...... turn - varv (snurra n antal varv = nturn) – för transformation, dåligt ...... stöd ......
......
......
......
......
......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet44 WEBBUTVECKLING 1 ‐ ARBETSBOK
9) Varför behöver man inte ange enhet om måttet är 0 (noll)?
Noll av något är alltid noll – genom att utelämna enheten gör man det ...... tydligt att nollan är avsiktlig och inte ett misstag ......
10) Vad innebär LoVe Focus HaTe regeln?
Ordningen på regler för länkar bör vara ...... :link, :visited, :focus, :hover, :active ......
Uppgift8A – beräkna specificitet Fullborda tabellen genom att räkna ut selektorns specificitet. Skriv på slutet en sorteringssiffra där 1 är mest specifik och 7 minst specifik.
Selektor Antal id Antal klass och Antal typ och Ordning likvärdiga likvärdiga
p > em 0 0 2 7
.foo::first‐line 0 1 1 6
#bar 1 0 0 3
#bar p 1 0 1 2
p.foo:first‐of‐type 0 2 1 5
div[id="x"] > p:nth‐child(3n) 0 2 2 4
#bar div em:last‐child 1 1 2 1
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet45 WEBBUTVECKLING 1 ‐ ARBETSBOK
8.3 CSS – svårare frågor
11) Hur fungerar arv av textstorlek i CSS?
Det beräknade värdet ärvs......
12) Vilka CSS‐källor finns med i kaskaden?
Webbläsarens inbyggda CSS = User Agent CSS...... Användarens CSS = User CSS (1) ...... Inline CSS = Author CSS (1) ...... Style-elementets CSS = Author CSS (2) ...... Link-elementets CSS = Author CSS (3) ...... Användarens CSS med ! important = User CSS (2) ......
13) Vad är en CSS reset?
En ”nollställning” av webbläsarens inbyggda CSS-regler ......
14) Det finns två sätt att ange en media‐query. Vilka är dessa?
I CSS-koden som en @-regel eller som ett HTML-attribut ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet46 WEBBUTVECKLING 1 ‐ ARBETSBOK
Uppgift 8B – Gör om kortformer (shorthands) till deras långa form: Skriv om nedanstående deklarationer från kortform, till att varje enskild egenskap får sin egen deklaration. De två första är färdiggjorda som ett exempel. Använd exempelvis Mozilla Developer Network för att ta reda på default‐värden.
Kortform Utförlig form
font: italic normal bold 1em/1.5 serif; font‐style: italic; font‐variant: normal; font‐weight: bold; font‐size: 1em; line‐height: 1.5; font‐family: serif;
border: 2px solid red; border‐width: 2px; border‐style: solid; border‐color: red;
background: #CCC url("foo.png") center background-color: #ccc; no‐repeat fixed cover; background-image: url(”foo.png”);
background-position: center;
background-repeat: no-repeat;
background-attachment: fixed;
background-size: cover;
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet47 WEBBUTVECKLING 1 ‐ ARBETSBOK
Kortform Utförlig form
font: 1.4em Consolas, monospace; font-style: normal;
font-variant: normal;
font-weight: normal;
font-size: 1.4em; line-height: normal;
font-family: Consolas, monospace;
border: 3px dotted; border-width: 3px;
border-style: dotted;
border-color: black; /* samma som texten */
background: url("foo.png"); background-color: transparent; (Dåligt skriven! Man nästan vill alltid ange färg också.) background-image: url(”foo.png”); background-position: 0% 0%;
background-repeat: no-repeat;
background-attachment: scroll;
background-size: auto;
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet48 WEBBUTVECKLING 1 ‐ ARBETSBOK
9 FÄRGER OCH BILDER
9.1 Färger i CSS
1) Vad står bokstäverna rgb för när man anger färger?
Red, Green, Blue ......
2) Vad är alpha?
Graden av genomskinlighet ......
3) Här kommer några hexadecimala färgkoder. Förkorta dem om möjligt. (Se avsnitt 4.8.2 i Läroboken)
Långform Kortform
#AABBCC #ABC
#A1B2C3 (kan inte förkortas)
#000000 #000
#DDCCF0 (kan inte förkortas)
#1100CC #10C
4) Extrauppgift: Gör om dessa värden till hexadecimala
RGB Hexadecimal
rgb(16, 40, 101) #102865
rgb(128, 0, 255) #8000FF
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet49 WEBBUTVECKLING 1 ‐ ARBETSBOK
5) Vilken vinkel i HSL‐systemet har cyan, magenta och gul?
Du kan titta på den interaktiva demon av hsl‐färger på http://webbteknik.nu/ för att hitta svaret. Cyan = 60 grader, Magenta = 320 grader, Gul = 180 grader ......
9.2 Bilder
6) Hur anger man en bild som värde på en egenskap i CSS?
url(path/to/image.png) ......
7) När är vektorgrafik att föredra framför pixelbaserade bilder?
När man vill kunna skala bilderna i storlek. När bilderna har få ...... fotografiska detaljer (logotyper, infographics, diagram, etc)......
8) Vilka bildformat bygger på paletter?
Gif, PNG-8 ......
9) Kan GIF‐bilder vara delvis genomskinliga?
Nej, de har ingen alphakanal ......
10) Vad händer om man komprimerar en JPEG‐bild för mycket?
Artefakter uppstår (bildens nyansrikedom minskar dessutom) ......
11) Vilka av de på webben vanliga bildformaten kan ha metadata?
PNG, JPEG (och SVG eftersom det bygger på XML) ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet50 WEBBUTVECKLING 1 ‐ ARBETSBOK
Uppgift 9A – testa SVG Hämta kap‐9‐b.html på http://webbteknik.nu/ Det är samma bild som du ser i avsnitt 9.4.4 i läroboken. Efter varje steg: Spara, uppdatera webbläsaren, observera skillnaden. Byt färg på rektangeln till rgb(20, 255, 20) Gör cirkelns radie 100 Gör cirkelns kantlinje tjockare (3) Flytta cirkeln åt vänster minst 100 steg Lägg till ytterligare en rektangel
Diskussionsfråga För ett enkelt hänga‐gubbe spel, skulle du använda SVG, Canvas eller WebGL? Diskutera med några andra. Skriv ner några slutsatser och argument......
......
......
......
Avancerad uppgift ‐ testa Pngcrush Hämta eller skapa en PNG‐bild. Kör den genom Pngcrush. Observera hur mycket mindre den blev. Testa gärna på mer än en bild.
Före: ......
Efter: ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet51 WEBBUTVECKLING 1 ‐ ARBETSBOK
10 BOXAR OCH SEKTIONER
Tips: Titta på den interaktiva demon av box‐sizing på http://webbteknik.nu/
10.1 CSS för boxar
1) Om du vill dölja alla div‐element med klassen peekabo, hur skriver du en CSS‐regel som gör detta? Det dolda elementet ska varken synas eller uppta någon yta.
.peekabo {
display: none;
}
2) Vilka webbläsare stödjer CSS 3 egenskapen box‐sizing? Från och med vilken version?
Se data på http://caniuse.com/ (Du kan strunta i mobila webbläsare för den här frågan) IE8 och framåt ...... Firefox sedan åtminstone 3.6, fast bara med prefix...... Chrome, åtminstone sedan version 17...... Safari 5 med prefix, Safari 5.1 och framåt utan prefix ...... Opera åtminstone från 11.6 och framåt ...... (Alla mobila webbläsare stödjer egenskapen) ......
3) Vad skiljer border från outline?
Border är med och upptar yta i boxen. Outline ritas utanför boxen ...... antingen i marginalen, eller ovanpå (eller under) intilliggande element ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet52 WEBBUTVECKLING 1 ‐ ARBETSBOK
Övning 10A – placera boxar Hämta hem kap‐10‐a.html samt kap‐10‐a.css från http://webbteknik.nu/ Skapa följande utseende med hjälp av egenskapen position. Lägg märke till att den blå rutan inte ska följa med när sidan skrollar.
Tips: Analysera först HTML‐kod och den redan skrivna CSS‐koden. Alla positionsvärden är angivna i steg om 50px; Du måste också använda z‐index. Kontrollera först hur den fungerar på MDN. Position: absolute kommer vara relativt wrapper. Position: fixed kommer vara relativt viewport. Ange left för den blå divven med procent. Det finns en färdigskriven marginal som tillsammans med rätt procentvärde placerar den rätt, oavsett sidbredd.
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet53 WEBBUTVECKLING 1 ‐ ARBETSBOK
Övning 10B – transform Hämta hem kap‐10‐b.html och kap‐10‐b.css från http://webbteknik.nu/ När muspekaren svävar över divven i mitten, så ska den få utseendet nedan. Divven har minskat i storlek och roterat.
Tips: Lägg märke till att det finns två divvar på sidan. Om muspekaren inte svävar över dem, så täcks den bakre av den du ska arbeta med. Använd transform. Matematiken för scale bygger på roten ur 2. När du fått det att funka i en webbläsare, lägg till prefix för alla andra. Testa din CSS‐kod med CSS‐lint på http://csslint.net/
Extrauppgift
Lägg till en mjuk övergångseffekt till den förra uppgiften med transition. Låt det till exempel ta en halv sekund att växla läge.
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet54 WEBBUTVECKLING 1 ‐ ARBETSBOK
10.2 Sektioner
4) Ersätter elementet i HTML5 det äldre elementet ? (Motivera ditt svar.)
Nej. har ett semantiskt värde. Det påverkar dokumentets ...... outline. Det gör inte . Det finns dock vissa speciella tillfällen då ......
, eller ett annat sektionerande element, med fördel kan ...... användas när man tidigare använde ...... Du bör aldrig använda
som "wrapper", eller för att bara ha ...... som en "krok" för designen! ...... 5) Vad är en sektionsrot?
En sektionsrot skapar ett nytt sammanhang för en outline...... Innehållet tas inte med i en ev. ovanför liggande outline...... (Att
är en sektionsrot är ännu ett argument mot tabell-layout!) ...... Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet55 WEBBUTVECKLING 1 ‐ ARBETSBOK
11 LAYOUT MED FLOAT
Uppgift 11A – identifiera olika sorters layout Besök (med en vanlig dator, inte mobil eller surfplatta) minst 10 populära webbplatser, men inte förstasidan! Notera om de har 1‐, 2‐, 3‐ eller 4‐spaltslayout. Räkna bara de huvudsakliga spalterna. Ibland kan nämligen innehållet delas upp med inre spalter. Notera också hur många horisontella band som finns längst upp på sidan. Notera slutligen sidans menyer. Har den både primär‐ och sekundär navigation? Har den en specialmeny med snabblänkar till de mest använda sidorna? Försök hitta sidor där allt detta varierar. (Som en webbutvecklare ska du en dag kunna åstadkomma alla dessa!) Här kommer ett exempel:
Skärmdump från SvD:s sportsida 3 juni 2012. Sidan har tre spalter (numrerade i svart), plus inre uppdelning i spalter på artiklarna. Huvudet har hela fem horisontella band, varav det tredje i sin tur delats i två till vänster. Dessutom ligger de två översta fast på sidan när den skrollas. Översta bandet är hjälpmenyn. Band 4 är primärmeny och band 5 är sekundärmeny.
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet56 WEBBUTVECKLING 1 ‐ ARBETSBOK
Fullborda nu tabellen nedan:
Besökt Spalter Horisontella Primärmeny? Sekundärmeny? Hjälpmeny? webbplats band Var? Var? Var?
Aftonbladet 4 4 Till vänster Fälls ut i Fjärde sport primärmenyn bandet
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet57 WEBBUTVECKLING 1 ‐ ARBETSBOK
11.1 Layouttekniker
1) Det finns tre layouttekniker som kan användas med dagens webbläsare, för att skapa sidlayout med spalter. Vilka?
Float, inline-block, CSS-tabeller ...... (Absolut positionering är för begränsat, andra tekniker behöver mogna) ......
2) Vilket är (troligen) den teknik som kommer vara bäst för att skapa sidlayout om ett par år, d v s runt år 2015‐2020?
Flexbox ......
3) Vad menas med faux columns?
Att man lägger en marginal tillsammans med float, samt bakgrundsbild ...... på wrappern, så att ögat luras tro att det är två kolumner......
4) Vad menas med contain float?
Att det element som fått float inte ska sticka ut från sin förälder, ...... utan att föräldern ska växa på höjden så att float-elementet innesluts ......
5) Vad menas med clear float?
En nollställning, så att float inte påverkar efterföljande element ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet58 WEBBUTVECKLING 1 ‐ ARBETSBOK
Uppgift 11B – contain float Hitta ett annat sätt att "containa floats" än det som står i boken. Skriv en demokod för den lösning du hittat. Spara som kap‐11‐b.html. (Commit + push på Github)
Uppgift 11C – Läxhjälpens Om oss‐sida Du ska nu skapa all CSS‐kod för presentationssidan för Läxhjälpen. Detta är en stor uppgift, så dela upp den i mindre steg och var noggrann. Ladda hem om‐oss.html ifrån http://webbteknik.nu/ så slipper du skriva all kod från början. Följ med i boken i avsnitt 11.2.1, 11.3.2, 11.3.3, 11.3.5, 11.4.1 samt 11.5 och se hur resultatet växer fram. Spara och uppdatera webbläsaren ofta. o Git‐användare? Gör en commit med git efter varje avsnitt. Push när du är helt klar. Validera din kod.
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet59 WEBBUTVECKLING 1 ‐ ARBETSBOK
12 LISTOR OCH TABELLER
Uppgift 12A – en numrerar lista Gör en numrerad lista över dina favoritfilmer, fast bara platserna 6‐10. Spara som kap‐12‐a.html, uppdatera, validera. (Commit, push)
Uppgift 12B – description list Gör en description list som förklarar följande termer och förkortningar. Webbläsare Webserver HTML HTTP Spara som kap‐12‐b.html, uppdatera, validera. (Commit, push)
Uppgift 12C – meny till Läxhjälpen Fortsätt på uppgift 11C och lägg till menyn enligt kod i Lärobokens avsnitt 12.2. Följ sedvanlig drill med spara, uppdatera och validera (samt commit och push).
Uppgift 12D – tabell till Läxhjälpen Skapa sidan arbeten.html för Läxhjälpen. Återanvänd det du kan från sidan om‐oss.html. Skapa och ge design till en tabell genom att följa lärobokens avsnitt 12.3.1, 12.3.3 och 12.3.5 samt 12.4, 12.4.1 och 12.4.3 Följ sedvanlig drill med spara, uppdatera och validera (samt commit och push).
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet60 WEBBUTVECKLING 1 ‐ ARBETSBOK
13 FORMULÄR
13.1 Grundläggande om formulär
1) Vad kallas det på engelska att skicka data till en server?
Submit ......
2) Vad krävs på servern för att bearbeta data från ett formulär?
Ett skript (ett program) ......
3) Vad heter krypteringstekniken som används av https?
TLS – Transport Layer Security ......
4) Hur skickas data med metoden GET?
Som en del av URL:en.
......
5) Vad heter krypteringstekniken som används av https?
TLS – Transport Layer Security ......
6) Vilken http‐metod måste du använda om du vill skicka stora mängder data?
POST ......
7) Vilken http‐metod måste du använda om du vill skicka stora mängder data?
POST ......
Licens att använda denna bok är köpt via Licensen gäller enligt villkor www.skolportalen.se © THELIN LÄROMEDEL & LARS GUNTHER 2012 i samband med köpet61 WEBBUTVECKLING 1 ‐ ARBETSBOK
8) Varför ska man aldrig använda GET‐metoden för inloggningar?
Lösenordet kommer att synas i klartext i URL:en ......
9) Vilken metod är default, GET eller POST?
GET ......
10) Vilket element definierar ett formulär?