SlideShare a Scribd company logo
1 of 75
Download to read offline
Föreläsning 4
CSS – Stilmallar för webben
Innehåll
1. CSS, vad är det?
2. Repetition av HTML-element
3. CSS, hur, var, när?
4. CSS & arv?
Frågor så långt?
CSS – Cascading Style Sheet
Same, same, but different
Samma innehåll
– fast olika utseende
Samma innehåll
– fast olika utseende
Samma innehåll – fast olika utseende
• Produkter – olika utssende, samma innehåll
Samma innehåll – fast olika
utseende
http://www.csszengarden.com
Cascading Style Sheets är ett språk som beskriver
presentationsstilen för ett strukturerat dokument som till
exempel typsnitt, textstorlek och färg.
http://sv.wikipedia.org/wiki/Cascading_Style_Sheets, 2012-11-02
CSS – Snabb historik
• Hette ursprungligen Cascading HTML Style Sheets (CHSS)
• Håkon Wium Lie
• Döptes sedan om för att inte vara specifikt till HTML
Har tre nivåer
• Nivå 1: Urspring rekommendation från 1996
• Nivå 2 (2.1): 2007, primär version med bra (dock inte fullständigt)
webbläsarstöd
• Nivå 3: Under aktiv utveckling. Kan användas, men har bara stöd i de
nyaste webbläsarna.
Kort om CSS
• CSS sköter formgivning av innehåll, medan HTML sköter struktur av
innehåll.
• CSS styr hur HTML-elementen ska visas
• Typisk användning av CSS är för typografi, layout, bildhantering,
animationer m.m.
• CSS är ett eget språk, men går att använda tillsammans med HTML
• Genom att koppla olika CSS-mallar till samma HTML-dokument kan
informationen presenteras på olika sätt
Varför CSS?
• Det gör webbplatser grafiskt tilltalande
• Det är smidigt att bygga upp layouter
• Det gör webbplatser lättare att underhålla
• M.m.
• Anpassa webbplatsen efter målgruppen
• Öka användbarhet
• Öka attraktivitet
• Optimera för användaren
HTML
Olika typer av element
Olika typer av element
• Det finns två huvudtyper av element (finns fler, mer om det sen).
• Block
• Inline
• Block-element visas generellt (utan styling från css) upp över hela
skärmen horisontellt, som ett block
• Inline-element visas generellt (utan styling från css) endast upp där
dess innehåll finns.
Olika element
• Block-element för layout:
• Section, article, div m.m.
• Block-element för innehåll
• p, table, ul, h1
• Inline-element
• i, span, strong, b, a, img
Demo!
Tillbaka till CSS
CSS – Same same but different
• Formgivning åt HTML-dokument
• Typografi
• Layout
• Färger
• Bildhantering m.m.
Hur skriver man CSS?
• Först måste man ange vad som ska stylas (s.k. selektor). T.ex. om
man vill styla alla h1-taggar skriver man ”h1” följt av tecken {}.
Mellan {} skrivs de egenskaper som <h1>-taggarna ska ha. T.ex.
h1{
color: blue;
text-align: center;
}
Hur fungerar det?
• Man kan skriva CSS-kod på tre olika ställen:
1. i html-taggar m.h.a. attributet style=””:
<h1 style=”color:blue;”>Rubrik</h1>
• 2. i html-dokumentet inom <style>-taggen:
<style type=”text/css”>
h1{color:blue}
</style>
• 3. i ett externa CSS-dokument:
h1{color:blue}
Exempelkod
• Göra alla paragrafer kursiva:
• Gör alla rubriker av typen h2 understrukna och gröna:
Olika egenskaper för text i css
CSS - Boxmodellen
• Element i HTML kan beskrivas som boxar, och kan tilldelas olika
egenskaper som t.ex.
• Höjd
• Bredd
• Ram
• Marginaler mellan varandra
• Var de ska ligga
• Färg
• Osv.
• OBS. block-element
Boxmodellen
Total bredd för en box är: Content (width) + Padding + Border.
Margin är sedan marginalen från boxen
<h1> som en box
• En vanlig <h1>-tagg:
• En vanlig <h1>-tagg med CSS:
Boxar
Exempel
Om jag vill formge bara en
paragraf?
Identifiera element genom id
• I HTML kan man identifiera specifika element genom att ge dem ett
unikt id
• Ett id ges genom attributet ”id” samt namnet på id:t
• T.ex. för att ange ett id för en paragraf kan man skriva:
• Eller för att ge en rubrik ett id:
• Eller för att ge en bild ett id:
Att formge element genom att ange id i CSS
• För att referera från CSS till ett element med ett specifikt id i HTML
använder man tecknet # (brädgård)
• T.ex. för att referera till paragrafen:
Så skriver man i CSS:
• Och för att ge texten i paragrafen med id:t ”start” blå färg skriver man
i CSS:
Om jag vill formge några
paragrafer?
Identifiera element genom klasser
• I HTML kan man identifiera element genom att ge dem en klass
• En klass ges genom attributet ”class” samt namnet på klassen
• T.ex. för att ange en klass för en paragraf kan man skriva:
• Eller för att ge en rubrik ett id:
• Eller för att ge en bild ett id:
Att formge element genom att ange klasser i
CSS
• För att referera från CSS till de element som har tilldelat sig en viss
klass skriver man . (punkt) och klassnamnet
• T.ex. för att referera till paragraferna:
Så skriver man i CSS:
• Och för att ge texten i paragraferna med klassen ”blue” blå färg
skriver man i CSS:
CSS Repetition
• För att referera till ett element skriver man:
• element{egenskap:värde;}
• För att referera till element med en klass skriver man:
• .klassnamn{egenskap:värde;}
• För att referera till ett element med ett id skriver man:
• #id{egenskap:värde;}
DEMO – id och klasser
CSS i ett externt dokument?
CSS i ett externt dokument
• Ofta när man jobbat med CSS så separerar man på HTML och CSS-
koden. De största fördelarna med detta är:
1. Om en webbplats består av mer än en HTML-sida så återanvänds
CSS-koden på alla sidor där den är inkluderad.
2. Genom att separera HTML och CSS så får man en ”renare” och mer
lättläst källkod.
Hur länkar man till ett externa CSS-dokument
• Det sker i taggen <head>
• Man skriver:
<link href=”sökväg” rel="stylesheet" type="text/css">
• T.ex.
<link href=”style.css" rel="stylesheet" type="text/css">
• OBS. Det externa dokument som innehåller all CSS-kod måste sluta
på ”.css” alltså t.ex. ”style.css”.
Demo – CSS i externt dokument
Tips
• http://www.w3schools.com/css/css_intro.asp
FRÅGOR?
Arv
Trädstruktur
Trädstruktur
• Trädstruktur används i datalogi för att beskriva en struktur
• Ofta hierarkisk
• Är ett verktyg för abstraktion och därmed klassificering, arv, regler
etc.
• Kan implementeras som en datastruktur för lagring/sökning av
information
• Trädstruktur kan liknas med
• Filstruktur med mappar och filer
• Släktträd vid släktforskning
• Biologin, klassificering av arter
• Växter (flora), insekter osv.
Träd – Centrala begrepp
Träd centrala begrepp
Träd centrala begrepp
Träd centrala begrepp
Centralt i webbteknik – DOM Modellen
• Document Object Model
• Är en presenation av HTML-dokumentets struktur som en modell, där de
olika elementen är kopplade till varandra genom olika relationer.
• DOM är standardiserat av W3C
• Trädliknande modell av sidan som den ”finns inne i webbläsaren”
• Stödjer koppling mellan statisk information t.ex. HTML och dynamiskt
beteende som t.ex. JavaScript.
• Exempel på användning är AJAX, vilket kort innebär att sidan modifieras
(saker tas bort, läggs till, förändras) utan att man behöver ladda om sidan.
• T.ex. Facebook, Gmail, m.m.
HTML - DOM
HTML – DOM
Källkod vs. noder
Arv i CSS
• För att inte behöva skriva specifika egenskaper för alla element på
hela webbsida så finns något som kallas för arv.
• Detta innebär att, i ett nodträd, så ärver barnet sin förälders
egenskaper (i CSS).
Arv - exempel
Arv - färgläggning
Body{
color: blue;
}
Arv färläggning
p{
color: red;
}
Arv färläggning
ul{
color: green;
}
Arv – flera färger
body{
color:green;
}
p{
color:blue;
}
Representation – att använda en kod (tal) för
att presentera något
• Nödvänligt att använda då datorn bara förstår 1 och 0.
• Det betyder att allt i datorn (färger, figurer, knapptryckningar, beräkningar,
musrörelser, bokstäver, siffror, typsnitt, bilder) representeras binärt.
• T.ex.
bokstaven A = 65 (dec) = 01000001 (bin) = 41 (hex)
• I webbteknik kommer vi i kontakt med flera sådana bestämda
regelsystem & standarder för hur saker och ting är representerade
• CharacterEncoding(charset), hur tecken ska beskrivas, exempel ISO 8859, UTF
8, Unicode, …(äldre standard: ASCII)
• Färgmodell, hur färger ska beskrivas, exempel RGB, CMY, CMYK
Färger i HTML/CSS
• Man kan använda namn ”red/green/blue” osv. Fast detta begränsar
färgvalet något enormt!
• Istället använder man s.k. hexadecimal t.ex.
#08ht5s för att ange en viss färg.
Färgval
• http://colorschemedesigner.com/
CSS – text-egenskaper
CSS Repetition
• För att referera till ett element skriver man:
• element{egenskap:värde;}
• För att referera till element med en klass skriver man:
• .klassnamn{egenskap:värde;}
• För att referera till ett element med ett id skriver man:
• #id{egenskap:värde;}
http://i.imgur.com/Q3cUg29.gif

More Related Content

What's hot

HT17 - DA156A - CSS, Layout 2
HT17 - DA156A - CSS, Layout 2HT17 - DA156A - CSS, Layout 2
HT17 - DA156A - CSS, Layout 2Anton Tibblin
 
VT16 - DA355A - Layout med CSS
VT16 - DA355A - Layout med CSSVT16 - DA355A - Layout med CSS
VT16 - DA355A - Layout med CSSAnton Tibblin
 
HT16 - DA156A - CSS, layout
HT16 - DA156A - CSS, layoutHT16 - DA156A - CSS, layout
HT16 - DA156A - CSS, layoutAnton Tibblin
 
VT18 - DA355A - Introduktion till CSS
VT18 - DA355A - Introduktion till CSSVT18 - DA355A - Introduktion till CSS
VT18 - DA355A - Introduktion till CSSAnton Tibblin
 
VT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTMLVT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTMLAnton Tibblin
 
Webbapplikationer - HTML
Webbapplikationer - HTMLWebbapplikationer - HTML
Webbapplikationer - HTMLAnton Tibblin
 
HT16 - DA156A - Kursintroduktion
HT16 - DA156A - KursintroduktionHT16 - DA156A - Kursintroduktion
HT16 - DA156A - KursintroduktionAnton Tibblin
 
VT17 - DA355A - Intro JS
VT17 - DA355A - Intro JSVT17 - DA355A - Intro JS
VT17 - DA355A - Intro JSAnton Tibblin
 
HT16 - DA156A - Tabeller och formulär
HT16 - DA156A - Tabeller och formulärHT16 - DA156A - Tabeller och formulär
HT16 - DA156A - Tabeller och formulärAnton Tibblin
 
HT17 - DA156A - Ramverk och bibliotek
HT17 - DA156A - Ramverk och bibliotekHT17 - DA156A - Ramverk och bibliotek
HT17 - DA156A - Ramverk och bibliotekAnton Tibblin
 
HT16 - DA156A - Ramverk och bibliotek
HT16 - DA156A - Ramverk och bibliotekHT16 - DA156A - Ramverk och bibliotek
HT16 - DA156A - Ramverk och bibliotekAnton Tibblin
 
Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)
Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)
Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)Anton Tibblin
 
VT17 - DA355A - Responsive design
VT17 - DA355A - Responsive designVT17 - DA355A - Responsive design
VT17 - DA355A - Responsive designAnton Tibblin
 
HT17 - DA156A - Kursintroduktion
HT17 - DA156A - KursintroduktionHT17 - DA156A - Kursintroduktion
HT17 - DA156A - KursintroduktionAnton Tibblin
 
HT18 - DA156A - Extra
HT18 - DA156A - ExtraHT18 - DA156A - Extra
HT18 - DA156A - ExtraAnton Tibblin
 
HT17 - DA156A - JavaScript i webbutveckling
HT17 - DA156A - JavaScript i webbutvecklingHT17 - DA156A - JavaScript i webbutveckling
HT17 - DA156A - JavaScript i webbutvecklingAnton Tibblin
 
Föreläsning 1: Grundläggande HTML
Föreläsning 1: Grundläggande HTMLFöreläsning 1: Grundläggande HTML
Föreläsning 1: Grundläggande HTMLJohannes Karlsson
 
HT16 - DA156A - Introduktion till JavaScript
HT16 - DA156A - Introduktion till JavaScriptHT16 - DA156A - Introduktion till JavaScript
HT16 - DA156A - Introduktion till JavaScriptAnton Tibblin
 
HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3Anton Tibblin
 

What's hot (20)

HT17 - DA156A - CSS, Layout 2
HT17 - DA156A - CSS, Layout 2HT17 - DA156A - CSS, Layout 2
HT17 - DA156A - CSS, Layout 2
 
VT16 - DA355A - Layout med CSS
VT16 - DA355A - Layout med CSSVT16 - DA355A - Layout med CSS
VT16 - DA355A - Layout med CSS
 
HT16 - DA156A - CSS, layout
HT16 - DA156A - CSS, layoutHT16 - DA156A - CSS, layout
HT16 - DA156A - CSS, layout
 
VT18 - DA355A - Introduktion till CSS
VT18 - DA355A - Introduktion till CSSVT18 - DA355A - Introduktion till CSS
VT18 - DA355A - Introduktion till CSS
 
VT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTMLVT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTML
 
Webbapplikationer - HTML
Webbapplikationer - HTMLWebbapplikationer - HTML
Webbapplikationer - HTML
 
HT16 - DA156A - Kursintroduktion
HT16 - DA156A - KursintroduktionHT16 - DA156A - Kursintroduktion
HT16 - DA156A - Kursintroduktion
 
VT17 - DA355A - Intro JS
VT17 - DA355A - Intro JSVT17 - DA355A - Intro JS
VT17 - DA355A - Intro JS
 
HT16 - DA156A - Tabeller och formulär
HT16 - DA156A - Tabeller och formulärHT16 - DA156A - Tabeller och formulär
HT16 - DA156A - Tabeller och formulär
 
HT17 - DA156A - Ramverk och bibliotek
HT17 - DA156A - Ramverk och bibliotekHT17 - DA156A - Ramverk och bibliotek
HT17 - DA156A - Ramverk och bibliotek
 
JavaScript - Intro
JavaScript - IntroJavaScript - Intro
JavaScript - Intro
 
HT16 - DA156A - Ramverk och bibliotek
HT16 - DA156A - Ramverk och bibliotekHT16 - DA156A - Ramverk och bibliotek
HT16 - DA156A - Ramverk och bibliotek
 
Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)
Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)
Webbapplikationer - Kursintroduktion (anton.tibblin@mah.se)
 
VT17 - DA355A - Responsive design
VT17 - DA355A - Responsive designVT17 - DA355A - Responsive design
VT17 - DA355A - Responsive design
 
HT17 - DA156A - Kursintroduktion
HT17 - DA156A - KursintroduktionHT17 - DA156A - Kursintroduktion
HT17 - DA156A - Kursintroduktion
 
HT18 - DA156A - Extra
HT18 - DA156A - ExtraHT18 - DA156A - Extra
HT18 - DA156A - Extra
 
HT17 - DA156A - JavaScript i webbutveckling
HT17 - DA156A - JavaScript i webbutvecklingHT17 - DA156A - JavaScript i webbutveckling
HT17 - DA156A - JavaScript i webbutveckling
 
Föreläsning 1: Grundläggande HTML
Föreläsning 1: Grundläggande HTMLFöreläsning 1: Grundläggande HTML
Föreläsning 1: Grundläggande HTML
 
HT16 - DA156A - Introduktion till JavaScript
HT16 - DA156A - Introduktion till JavaScriptHT16 - DA156A - Introduktion till JavaScript
HT16 - DA156A - Introduktion till JavaScript
 
HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3
 

Similar to HT17 - DA156A - Introduktion till CSS

Introduktion till CSS
Introduktion till CSSIntroduktion till CSS
Introduktion till CSSAnton Tibblin
 
Vi skapar en webbsida
Vi skapar en webbsidaVi skapar en webbsida
Vi skapar en webbsidaJonas_Isegrim
 
Css layouts, en kort repris
Css layouts, en kort  reprisCss layouts, en kort  repris
Css layouts, en kort reprisPhilip Ekholm
 
VT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSSVT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSSAnton Tibblin
 
Dreamweaver cs3 och css
Dreamweaver cs3 och cssDreamweaver cs3 och css
Dreamweaver cs3 och csstonicii
 
HT19 - DA156A - Layout med CSS (2)
HT19 - DA156A - Layout med CSS (2)HT19 - DA156A - Layout med CSS (2)
HT19 - DA156A - Layout med CSS (2)Anton Tibblin
 
HT18 - DA156A - Layout med CSS (2)
HT18 - DA156A - Layout med CSS (2)HT18 - DA156A - Layout med CSS (2)
HT18 - DA156A - Layout med CSS (2)Anton Tibblin
 
Introduktion till HTML
Introduktion till HTMLIntroduktion till HTML
Introduktion till HTMLAnton Tibblin
 
HT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTMLHT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTMLAnton Tibblin
 
HT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTMLHT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTMLAnton Tibblin
 
Responsiv webbdesign + HTML5 + CSS5
Responsiv webbdesign + HTML5 + CSS5Responsiv webbdesign + HTML5 + CSS5
Responsiv webbdesign + HTML5 + CSS5Martin Carlsson
 
VT2019 - DA355A - CSS Grid & Webbramverk
VT2019 - DA355A - CSS Grid & WebbramverkVT2019 - DA355A - CSS Grid & Webbramverk
VT2019 - DA355A - CSS Grid & WebbramverkAnton Tibblin
 
CSS för utskrift
CSS för utskriftCSS för utskrift
CSS för utskriftkurs-resurs
 
Global återställing av CSS
Global återställing av CSSGlobal återställing av CSS
Global återställing av CSSkurs-resurs
 
VT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutvecklingVT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutvecklingAnton Tibblin
 
HT19 - DA156A - Tabeller & formulär
HT19 - DA156A - Tabeller & formulärHT19 - DA156A - Tabeller & formulär
HT19 - DA156A - Tabeller & formulärAnton Tibblin
 

Similar to HT17 - DA156A - Introduktion till CSS (20)

Introduktion till CSS
Introduktion till CSSIntroduktion till CSS
Introduktion till CSS
 
4 html 2_ht13
4 html 2_ht134 html 2_ht13
4 html 2_ht13
 
Vi skapar en webbsida
Vi skapar en webbsidaVi skapar en webbsida
Vi skapar en webbsida
 
Css layouts, en kort repris
Css layouts, en kort  reprisCss layouts, en kort  repris
Css layouts, en kort repris
 
VT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSSVT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSS
 
Dreamweaver cs3 och css
Dreamweaver cs3 och cssDreamweaver cs3 och css
Dreamweaver cs3 och css
 
HT19 - DA156A - Layout med CSS (2)
HT19 - DA156A - Layout med CSS (2)HT19 - DA156A - Layout med CSS (2)
HT19 - DA156A - Layout med CSS (2)
 
HT18 - DA156A - Layout med CSS (2)
HT18 - DA156A - Layout med CSS (2)HT18 - DA156A - Layout med CSS (2)
HT18 - DA156A - Layout med CSS (2)
 
Introduktion till HTML
Introduktion till HTMLIntroduktion till HTML
Introduktion till HTML
 
Html 3 ht14
Html 3 ht14Html 3 ht14
Html 3 ht14
 
HT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTMLHT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTML
 
HT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTMLHT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTML
 
Responsiv webbdesign + HTML5 + CSS5
Responsiv webbdesign + HTML5 + CSS5Responsiv webbdesign + HTML5 + CSS5
Responsiv webbdesign + HTML5 + CSS5
 
CSS
CSSCSS
CSS
 
VT2019 - DA355A - CSS Grid & Webbramverk
VT2019 - DA355A - CSS Grid & WebbramverkVT2019 - DA355A - CSS Grid & Webbramverk
VT2019 - DA355A - CSS Grid & Webbramverk
 
CSS för utskrift
CSS för utskriftCSS för utskrift
CSS för utskrift
 
Global återställing av CSS
Global återställing av CSSGlobal återställing av CSS
Global återställing av CSS
 
JavaScript + DOM
JavaScript + DOMJavaScript + DOM
JavaScript + DOM
 
VT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutvecklingVT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutveckling
 
HT19 - DA156A - Tabeller & formulär
HT19 - DA156A - Tabeller & formulärHT19 - DA156A - Tabeller & formulär
HT19 - DA156A - Tabeller & formulär
 

More from Anton Tibblin

2024 - Localstorage & cookies Geolocation Mediahantering.pdf
2024 - Localstorage & cookies Geolocation Mediahantering.pdf2024 - Localstorage & cookies Geolocation Mediahantering.pdf
2024 - Localstorage & cookies Geolocation Mediahantering.pdfAnton Tibblin
 
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbteknikerVT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbteknikerAnton Tibblin
 
DA395A - VT24 - JavaScript & Document object model
DA395A - VT24 - JavaScript & Document object modelDA395A - VT24 - JavaScript & Document object model
DA395A - VT24 - JavaScript & Document object modelAnton Tibblin
 
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbteknikerVT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbteknikerAnton Tibblin
 
HT23 - DA354A - Webbprogrammering med Python
HT23 - DA354A - Webbprogrammering med PythonHT23 - DA354A - Webbprogrammering med Python
HT23 - DA354A - Webbprogrammering med PythonAnton Tibblin
 
HT23 - DA354A - Fil- och felhantering
HT23 - DA354A - Fil- och felhanteringHT23 - DA354A - Fil- och felhantering
HT23 - DA354A - Fil- och felhanteringAnton Tibblin
 
HT23 - DA354A - Listor och lexikon
HT23 - DA354A - Listor och lexikonHT23 - DA354A - Listor och lexikon
HT23 - DA354A - Listor och lexikonAnton Tibblin
 
HT23 - DA354A - Kursintroduktion
HT23 - DA354A - KursintroduktionHT23 - DA354A - Kursintroduktion
HT23 - DA354A - KursintroduktionAnton Tibblin
 
HT23 - DA106A - Användbarhet (2)
HT23 - DA106A - Användbarhet (2)HT23 - DA106A - Användbarhet (2)
HT23 - DA106A - Användbarhet (2)Anton Tibblin
 
HT23 - DA106A - Användbarhet 1
HT23 - DA106A - Användbarhet 1HT23 - DA106A - Användbarhet 1
HT23 - DA106A - Användbarhet 1Anton Tibblin
 
HT23 - DA106A - Ramverk & Bibliotek
HT23 - DA106A - Ramverk & BibliotekHT23 - DA106A - Ramverk & Bibliotek
HT23 - DA106A - Ramverk & BibliotekAnton Tibblin
 
HT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScriptHT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScriptAnton Tibblin
 
HT23 - DA106A - Responsiv webbutveckling
HT23 - DA106A - Responsiv webbutvecklingHT23 - DA106A - Responsiv webbutveckling
HT23 - DA106A - Responsiv webbutvecklingAnton Tibblin
 
HT23 - DA106A - Layout (2)
HT23 - DA106A - Layout (2)HT23 - DA106A - Layout (2)
HT23 - DA106A - Layout (2)Anton Tibblin
 
HT23 - DA106A - Layout med CSS (1)
HT23 - DA106A - Layout med CSS (1)HT23 - DA106A - Layout med CSS (1)
HT23 - DA106A - Layout med CSS (1)Anton Tibblin
 
HTML - Tabeller och formulär
HTML - Tabeller och formulärHTML - Tabeller och formulär
HTML - Tabeller och formulärAnton Tibblin
 
LocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - MediaLocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - MediaAnton Tibblin
 
VT23 - RWD & Ramverk
VT23 - RWD & RamverkVT23 - RWD & Ramverk
VT23 - RWD & RamverkAnton Tibblin
 

More from Anton Tibblin (20)

2024 - Localstorage & cookies Geolocation Mediahantering.pdf
2024 - Localstorage & cookies Geolocation Mediahantering.pdf2024 - Localstorage & cookies Geolocation Mediahantering.pdf
2024 - Localstorage & cookies Geolocation Mediahantering.pdf
 
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbteknikerVT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
 
DA395A - VT24 - JavaScript & Document object model
DA395A - VT24 - JavaScript & Document object modelDA395A - VT24 - JavaScript & Document object model
DA395A - VT24 - JavaScript & Document object model
 
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbteknikerVT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
 
HT23 - DA354A - Webbprogrammering med Python
HT23 - DA354A - Webbprogrammering med PythonHT23 - DA354A - Webbprogrammering med Python
HT23 - DA354A - Webbprogrammering med Python
 
HT23 - DA354A - Fil- och felhantering
HT23 - DA354A - Fil- och felhanteringHT23 - DA354A - Fil- och felhantering
HT23 - DA354A - Fil- och felhantering
 
HT23 - DA354A - Listor och lexikon
HT23 - DA354A - Listor och lexikonHT23 - DA354A - Listor och lexikon
HT23 - DA354A - Listor och lexikon
 
HT23 - DA354A - Kursintroduktion
HT23 - DA354A - KursintroduktionHT23 - DA354A - Kursintroduktion
HT23 - DA354A - Kursintroduktion
 
HT23 - DA106A - Användbarhet (2)
HT23 - DA106A - Användbarhet (2)HT23 - DA106A - Användbarhet (2)
HT23 - DA106A - Användbarhet (2)
 
HT23 - DA106A - Användbarhet 1
HT23 - DA106A - Användbarhet 1HT23 - DA106A - Användbarhet 1
HT23 - DA106A - Användbarhet 1
 
HT23 - DA106A - Ramverk & Bibliotek
HT23 - DA106A - Ramverk & BibliotekHT23 - DA106A - Ramverk & Bibliotek
HT23 - DA106A - Ramverk & Bibliotek
 
HT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScriptHT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScript
 
HT23 - DA106A - Responsiv webbutveckling
HT23 - DA106A - Responsiv webbutvecklingHT23 - DA106A - Responsiv webbutveckling
HT23 - DA106A - Responsiv webbutveckling
 
HT23 - DA106A - Layout (2)
HT23 - DA106A - Layout (2)HT23 - DA106A - Layout (2)
HT23 - DA106A - Layout (2)
 
HT23 - DA106A - Layout med CSS (1)
HT23 - DA106A - Layout med CSS (1)HT23 - DA106A - Layout med CSS (1)
HT23 - DA106A - Layout med CSS (1)
 
HTML - Tabeller och formulär
HTML - Tabeller och formulärHTML - Tabeller och formulär
HTML - Tabeller och formulär
 
Kursintroduktion
KursintroduktionKursintroduktion
Kursintroduktion
 
LocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - MediaLocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - Media
 
jQuery & Ajax
jQuery & AjaxjQuery & Ajax
jQuery & Ajax
 
VT23 - RWD & Ramverk
VT23 - RWD & RamverkVT23 - RWD & Ramverk
VT23 - RWD & Ramverk
 

HT17 - DA156A - Introduktion till CSS

  • 1. Föreläsning 4 CSS – Stilmallar för webben
  • 2. Innehåll 1. CSS, vad är det? 2. Repetition av HTML-element 3. CSS, hur, var, när? 4. CSS & arv?
  • 4. CSS – Cascading Style Sheet Same, same, but different
  • 5. Samma innehåll – fast olika utseende
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. Samma innehåll – fast olika utseende
  • 13. Samma innehåll – fast olika utseende • Produkter – olika utssende, samma innehåll
  • 14.
  • 15. Samma innehåll – fast olika utseende http://www.csszengarden.com
  • 16. Cascading Style Sheets är ett språk som beskriver presentationsstilen för ett strukturerat dokument som till exempel typsnitt, textstorlek och färg. http://sv.wikipedia.org/wiki/Cascading_Style_Sheets, 2012-11-02
  • 17. CSS – Snabb historik • Hette ursprungligen Cascading HTML Style Sheets (CHSS) • Håkon Wium Lie • Döptes sedan om för att inte vara specifikt till HTML
  • 18. Har tre nivåer • Nivå 1: Urspring rekommendation från 1996 • Nivå 2 (2.1): 2007, primär version med bra (dock inte fullständigt) webbläsarstöd • Nivå 3: Under aktiv utveckling. Kan användas, men har bara stöd i de nyaste webbläsarna.
  • 19. Kort om CSS • CSS sköter formgivning av innehåll, medan HTML sköter struktur av innehåll. • CSS styr hur HTML-elementen ska visas • Typisk användning av CSS är för typografi, layout, bildhantering, animationer m.m. • CSS är ett eget språk, men går att använda tillsammans med HTML • Genom att koppla olika CSS-mallar till samma HTML-dokument kan informationen presenteras på olika sätt
  • 20. Varför CSS? • Det gör webbplatser grafiskt tilltalande • Det är smidigt att bygga upp layouter • Det gör webbplatser lättare att underhålla • M.m. • Anpassa webbplatsen efter målgruppen • Öka användbarhet • Öka attraktivitet • Optimera för användaren
  • 22. Olika typer av element • Det finns två huvudtyper av element (finns fler, mer om det sen). • Block • Inline • Block-element visas generellt (utan styling från css) upp över hela skärmen horisontellt, som ett block • Inline-element visas generellt (utan styling från css) endast upp där dess innehåll finns.
  • 23. Olika element • Block-element för layout: • Section, article, div m.m. • Block-element för innehåll • p, table, ul, h1 • Inline-element • i, span, strong, b, a, img
  • 24.
  • 25. Demo!
  • 27. CSS – Same same but different • Formgivning åt HTML-dokument • Typografi • Layout • Färger • Bildhantering m.m.
  • 28.
  • 29. Hur skriver man CSS? • Först måste man ange vad som ska stylas (s.k. selektor). T.ex. om man vill styla alla h1-taggar skriver man ”h1” följt av tecken {}. Mellan {} skrivs de egenskaper som <h1>-taggarna ska ha. T.ex. h1{ color: blue; text-align: center; }
  • 30. Hur fungerar det? • Man kan skriva CSS-kod på tre olika ställen: 1. i html-taggar m.h.a. attributet style=””: <h1 style=”color:blue;”>Rubrik</h1> • 2. i html-dokumentet inom <style>-taggen: <style type=”text/css”> h1{color:blue} </style> • 3. i ett externa CSS-dokument: h1{color:blue}
  • 31. Exempelkod • Göra alla paragrafer kursiva: • Gör alla rubriker av typen h2 understrukna och gröna:
  • 32. Olika egenskaper för text i css
  • 33. CSS - Boxmodellen • Element i HTML kan beskrivas som boxar, och kan tilldelas olika egenskaper som t.ex. • Höjd • Bredd • Ram • Marginaler mellan varandra • Var de ska ligga • Färg • Osv. • OBS. block-element
  • 34. Boxmodellen Total bredd för en box är: Content (width) + Padding + Border. Margin är sedan marginalen från boxen
  • 35. <h1> som en box • En vanlig <h1>-tagg: • En vanlig <h1>-tagg med CSS:
  • 36. Boxar
  • 38. Om jag vill formge bara en paragraf?
  • 39. Identifiera element genom id • I HTML kan man identifiera specifika element genom att ge dem ett unikt id • Ett id ges genom attributet ”id” samt namnet på id:t • T.ex. för att ange ett id för en paragraf kan man skriva: • Eller för att ge en rubrik ett id: • Eller för att ge en bild ett id:
  • 40. Att formge element genom att ange id i CSS • För att referera från CSS till ett element med ett specifikt id i HTML använder man tecknet # (brädgård) • T.ex. för att referera till paragrafen: Så skriver man i CSS: • Och för att ge texten i paragrafen med id:t ”start” blå färg skriver man i CSS:
  • 41. Om jag vill formge några paragrafer?
  • 42. Identifiera element genom klasser • I HTML kan man identifiera element genom att ge dem en klass • En klass ges genom attributet ”class” samt namnet på klassen • T.ex. för att ange en klass för en paragraf kan man skriva: • Eller för att ge en rubrik ett id: • Eller för att ge en bild ett id:
  • 43. Att formge element genom att ange klasser i CSS • För att referera från CSS till de element som har tilldelat sig en viss klass skriver man . (punkt) och klassnamnet • T.ex. för att referera till paragraferna: Så skriver man i CSS: • Och för att ge texten i paragraferna med klassen ”blue” blå färg skriver man i CSS:
  • 44. CSS Repetition • För att referera till ett element skriver man: • element{egenskap:värde;} • För att referera till element med en klass skriver man: • .klassnamn{egenskap:värde;} • För att referera till ett element med ett id skriver man: • #id{egenskap:värde;}
  • 45. DEMO – id och klasser
  • 46. CSS i ett externt dokument?
  • 47. CSS i ett externt dokument • Ofta när man jobbat med CSS så separerar man på HTML och CSS- koden. De största fördelarna med detta är: 1. Om en webbplats består av mer än en HTML-sida så återanvänds CSS-koden på alla sidor där den är inkluderad. 2. Genom att separera HTML och CSS så får man en ”renare” och mer lättläst källkod.
  • 48. Hur länkar man till ett externa CSS-dokument • Det sker i taggen <head> • Man skriver: <link href=”sökväg” rel="stylesheet" type="text/css"> • T.ex. <link href=”style.css" rel="stylesheet" type="text/css"> • OBS. Det externa dokument som innehåller all CSS-kod måste sluta på ”.css” alltså t.ex. ”style.css”.
  • 49. Demo – CSS i externt dokument
  • 52. Arv
  • 54. Trädstruktur • Trädstruktur används i datalogi för att beskriva en struktur • Ofta hierarkisk • Är ett verktyg för abstraktion och därmed klassificering, arv, regler etc. • Kan implementeras som en datastruktur för lagring/sökning av information • Trädstruktur kan liknas med • Filstruktur med mappar och filer • Släktträd vid släktforskning • Biologin, klassificering av arter • Växter (flora), insekter osv.
  • 59. Centralt i webbteknik – DOM Modellen • Document Object Model • Är en presenation av HTML-dokumentets struktur som en modell, där de olika elementen är kopplade till varandra genom olika relationer. • DOM är standardiserat av W3C • Trädliknande modell av sidan som den ”finns inne i webbläsaren” • Stödjer koppling mellan statisk information t.ex. HTML och dynamiskt beteende som t.ex. JavaScript. • Exempel på användning är AJAX, vilket kort innebär att sidan modifieras (saker tas bort, läggs till, förändras) utan att man behöver ladda om sidan. • T.ex. Facebook, Gmail, m.m.
  • 63. Arv i CSS • För att inte behöva skriva specifika egenskaper för alla element på hela webbsida så finns något som kallas för arv. • Detta innebär att, i ett nodträd, så ärver barnet sin förälders egenskaper (i CSS).
  • 68. Arv – flera färger body{ color:green; } p{ color:blue; }
  • 69. Representation – att använda en kod (tal) för att presentera något • Nödvänligt att använda då datorn bara förstår 1 och 0. • Det betyder att allt i datorn (färger, figurer, knapptryckningar, beräkningar, musrörelser, bokstäver, siffror, typsnitt, bilder) representeras binärt. • T.ex. bokstaven A = 65 (dec) = 01000001 (bin) = 41 (hex) • I webbteknik kommer vi i kontakt med flera sådana bestämda regelsystem & standarder för hur saker och ting är representerade • CharacterEncoding(charset), hur tecken ska beskrivas, exempel ISO 8859, UTF 8, Unicode, …(äldre standard: ASCII) • Färgmodell, hur färger ska beskrivas, exempel RGB, CMY, CMYK
  • 70. Färger i HTML/CSS • Man kan använda namn ”red/green/blue” osv. Fast detta begränsar färgvalet något enormt! • Istället använder man s.k. hexadecimal t.ex. #08ht5s för att ange en viss färg.
  • 73. CSS Repetition • För att referera till ett element skriver man: • element{egenskap:värde;} • För att referera till element med en klass skriver man: • .klassnamn{egenskap:värde;} • För att referera till ett element med ett id skriver man: • #id{egenskap:värde;}
  • 74.