SlideShare a Scribd company logo
DA106A
Introduktion till webbutveckling
HT23 7.5hp Anton Tibblin
Tabeller, formulär, m.m.
2
Frågor innan
vi börjar?
3
Dagens
Agenda
• Repetition
• Webbsidor, klient/server
• Element för text/länkar/bilder
• Tabeller
• Hur, var, när, varför?
• Grundläggande tabeller
• Mer avancerade tabeller
• Formulär
• Hur, var, när, varför?
• Att skicka data med HTML
• Grundläggande formulärselement
• HTML 5 & nya möjligheterna med formulär
Element?
Hur fungerar det?
8
Internet
Klient
Klient
Server
Resultat • En webbläsare visar oss en webbsida efter att
ha renderat ett HTML-dokument
Vad består en webbplats av?
JavaScript
CSS
HTML
Innehåll
Interaktivitet
Utformning
Struktur
Innehåll
HTML-dokumentet i helhet
HTML-dokument som träd
Element vi hittills tittat på
• <h1>-<h6>
• <p>
• <em>
• <strong>
• <ul>, <ol>
• <li>
• <img>
• <a>
Tabeller
Tabeller
•Tabeller är ett kraftfullt sätt att strukturera upp
information
• Strukturera upp data vid informationspresentation
•Tänk ”excel”
Tabeller - uppbyggnad
• En tabell är, precis som i excel, uppbygg av rader och kolumner
• Tabeller består oftast utav:
• Tabellhuvud
• Tabellrubriker
• Tabellkropp
• Tabelldata
• Tabellfot
• Tabellsammanfattning
• En tabell består således utan
• Rader
• Kolumner
Grundläggande element för tabeller
• <table> Skapar en tabell
• <caption> Beskrivning/rubrik för tabell
• <tr> tabellrad (table row)
• <th> Rubrik-kolumn (table header)
• <td> Data-kolumn (table data)
• Obs, alla taggarna har start- och slutttagg.
Dags att rita tabeller!
… och se hur det fungerar i HTML
Mer avancerade tabellelement
• <thead> Tabellhuvud
• <tbody> Tabellkropp
• <tfoot> Tabellfot
• T.ex.
<table>
<thead>…</thead>
<tbody>…</tbody>
<tfoot>…</tfoot>
</table>
… fler möjligheter med tabeller
•Det finns lägen då man inte vill att alla
rader/kolumner ska se exakt lika ut:
• En kolumn som sträcker sig över x antar kolumner
Men behöver man <thead>, <tbody>, <tfoot>?
• Det är semantiskt bra att förstå vilka delar av tabellen som
innehåller vilken information
• Det är enklare att formge de olika delarna av tabellen
• Det är enklare för andra att förstå tabellen
• Man kan t.ex. ”låsa” fast tabellhuvudet & tabellfoten och
skrolla tabellinnehållet
… fler möjligheter med tabeller
•Det finns lägen då man inte vill att alla
rader/kolumner ska se exakt lika ut:
• En kolumn som sträcker sig över x antar rader
Frågor om tabeller?
Demo för tabeller
I ett HTML-dokument
Att skicka data genom HTML
Varför formulär?
•Vi vill skicka data till en server
•Inloggningsuppgifter
•Skapa twitter-post
•Göra facebook-inlägg
•Lägga till annan data i olika databaser
•Vi ska i denna kurs bara fokusera på att skicka
data inte vad som faktiskt händer med den när
den kommer till servern.
När används formulär?
Översikt - olika element i ett formulär
Knapp
Text-fält (stort)
Text-fält
Checkboxar
Radioknappar
Drop-down meny
Varför används
formulär?
• Ett sätt att skicka data från klienten
(webbläsaren) till en server
• Spara data
• Validera data
• Analysera data
Hur fungerar det?
Internet
Klient
Klient
Server
firstName=Anton
lastName=Tibblin
course=DA106A
Hmm, kan vi kolla på detta
praktiskt också?
https://www.google.se/search?q=Malmö universitet
Att skapa ett formulär i HTML
•Taggen <form> omsluter ett formulär. <form> har olika
attribut:
•”action”
- Var formuläret ska skickas
•”method”
- På vilket sätt den data som användaren angett ska
skickas. Antingen GET eller POST
Översikt - olika element i ett formulär
Knapp
Text-fält (stort)
Text-fält
Checkboxar
Radioknappar
Drop-down meny
Inhämtning av data från användaren
• Detta kan göras av taggen <input> som kan representera olika
delar av ett formulär
• Notera att <input> är en öppen tagg och saknar sluttagg
• Attribut:
• Name Namnger input-elementet
• Value Ev. värde på en knapp/i ett textfält
• Type Vilken typ elementet ska vara t.ex.
knapp/textfält/radioknapp/checkbox osv.
Att skapa input-element
Att skicka data med formulär
• Data struktureras upp med:
- Namn, hur man identifierar det man skickat
- Värde, den information man skickar
• T.ex.
firstName=Anton
lastName=Tibblin
course=DA156A
GET/POST
• GET innebär att man skickar med den information som
användaren angett genom URL (adressen till sidan)
• POST innebär att man skickar informationen ”bakom
kulisserna”
• Standard är att man skicka mer GET (om inget annat anges)
GET/POST
Hur fungerar det?
Internet
Klient
Klient
Server
firstName=Anton
lastName=Tibblin
course=DA156A
Inhämtning av data från användaren
• Detta kan göras av taggen <input> som kan representera olika
delar av ett formulär
• Notera att <input> är en öppen tagg och saknar sluttagg
• Attribut:
• Name Namnger input-elementet
• Value Ev. värde på en knapp/i ett textfält
• Type Vilken typ elementet ska vara t.ex.
knapp/textfält/radioknapp/checkbox osv.
Exempel av input-taggen
<input type=”text” name=”firstName” value=”Förnamn här”>
<input type=”password” name=”password” value=”Lösen”>
<input type=”button” value=”Min knapp”>
<input type=”submit” value=”Skicka”>
<input type=”radio” name=”choice”>
<input type=”checkbox” name=”choice2”>
Andra attribut för <input>-taggen
• För checkboxar & radioknappar – om boxen ska vara inkryssad som
standard:
checked=”checked”
<input type="checkbox" checked="checked">
<input type="radio" checked="checked">
Gömda fält
• Man kan även skicka vidare information från formulär genom
gömda fält.
• Det innebär att fältet ligger ”osynligt” i bakgrunden.
• Även osynlig fält kan ha namn och värde
• T.ex.
<input type=”hidden” name=”namn” value=”anton”>
• Detta kommer alltså inte att synas på HTML-sidan
Textarea – För längre texter
• Har till skillnad från <input> en start- och en sluttag.
• Attribut:
• name (samma funktion som för <input>)
• rows, antalet rader (höjd på text-rutan)
• cols, antalet kolumner (bredd på text-rutan)
• <textarea cols=”10” rows=”3” name=”textfield”></textarea>
• <textarea cols=”10” rows=”3” name=”textfield”>Hej</textarea>
Select – Drop down-meny
• Menyn definieras genom taggen <select></select>
• Varje alternativ i drop down-menyn skapas genom taggen
<option></option>
• För att kunna veta namn och värde på det som skickas gör man:
<select name=”namn”>
<option value=”anton”>Anton</option>
<option value=”kalle”>Kalle</option>
<option value=”Johan”>Johan</option>
</select>
Etiketter för formulärselement
• Beskriver imatningsfälten
• Ökar användbarheten
<label>Namn</label>
<input type=”text” name=”namn”>
Ännu bättre:
<label for=”namn”>Namn</label>
<input type=”text” name=”namn” id=”namn”>
Nytt och roligt i HTML 5
Användbara attribut
•”reqiured”, göra ett fält obligatoriskt
•”placeholder”, en exempeltext för fältet
Nya typer för input (i formulär)
• color
• date
• datetime
• datetime-local
• email
• month
• number
• range
• search
• tel
• time
• url
• Week
• http://www.w3schools.com/html/html5_form_input_types.asp
Nya funktioner i HTML 5
Autocomplete i formulär
• <input list="browsers">
<datalist id="browsers">
<option value="Internet Explorer">
<option value="Firefox">
<option value="Chrome">
<option value="Opera">
<option value="Safari">
</datalist>
• http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_datalist
Att bygga ett formulär
Bygga ett formulär
– mot en webbserver
http://mah.antontibblin.se/ia-gb

More Related Content

Similar to HTML - Tabeller och formulär

HT18 - DA156A - Extra
HT18 - DA156A - ExtraHT18 - DA156A - Extra
HT18 - DA156A - Extra
Anton Tibblin
 
HT17 - DA156A - Sammanfattning av kursen
HT17 - DA156A - Sammanfattning av kursenHT17 - DA156A - Sammanfattning av kursen
HT17 - DA156A - Sammanfattning av kursen
Anton Tibblin
 
HT17 - DA354A - Webbapplikation
HT17 - DA354A - WebbapplikationHT17 - DA354A - Webbapplikation
HT17 - DA354A - Webbapplikation
Anton Tibblin
 
Introduktion till HTML
Introduktion till HTMLIntroduktion till HTML
Introduktion till HTML
Anton Tibblin
 
HT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTMLHT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTML
Anton Tibblin
 
HT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTMLHT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTML
Anton 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 HTML
Johannes Karlsson
 
HT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTMLHT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTML
Anton Tibblin
 
HT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTMLHT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTML
Anton Tibblin
 
HT22 - DA354A - Funktioner
HT22 - DA354A - FunktionerHT22 - DA354A - Funktioner
HT22 - DA354A - Funktioner
Anton Tibblin
 
HT15, DA354A - Funkioner
HT15, DA354A - FunkionerHT15, DA354A - Funkioner
HT15, DA354A - Funkioner
Anton Tibblin
 
HT16 - DA354A - Funktioner
HT16 - DA354A - FunktionerHT16 - DA354A - Funktioner
HT16 - DA354A - Funktioner
Anton Tibblin
 
HT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web appHT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web app
Anton Tibblin
 
HT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottleHT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottle
Anton Tibblin
 
HT18 - DA354A - Functions
HT18 - DA354A - FunctionsHT18 - DA354A - Functions
HT18 - DA354A - Functions
Anton Tibblin
 
HT19 - DA354A - Funktioner
HT19 - DA354A - FunktionerHT19 - DA354A - Funktioner
HT19 - DA354A - Funktioner
Anton Tibblin
 
HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3
Anton Tibblin
 
BigData med logganalys
BigData med logganalysBigData med logganalys
BigData med logganalys
Findwise
 
Föreläsning om HTML
Föreläsning om HTMLFöreläsning om HTML
Föreläsning om HTML
Johannes Karlsson
 
VT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & BootstrapVT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & Bootstrap
Anton Tibblin
 

Similar to HTML - Tabeller och formulär (20)

HT18 - DA156A - Extra
HT18 - DA156A - ExtraHT18 - DA156A - Extra
HT18 - DA156A - Extra
 
HT17 - DA156A - Sammanfattning av kursen
HT17 - DA156A - Sammanfattning av kursenHT17 - DA156A - Sammanfattning av kursen
HT17 - DA156A - Sammanfattning av kursen
 
HT17 - DA354A - Webbapplikation
HT17 - DA354A - WebbapplikationHT17 - DA354A - Webbapplikation
HT17 - DA354A - Webbapplikation
 
Introduktion till HTML
Introduktion till HTMLIntroduktion till HTML
Introduktion till HTML
 
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
 
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
 
HT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTMLHT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTML
 
HT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTMLHT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTML
 
HT22 - DA354A - Funktioner
HT22 - DA354A - FunktionerHT22 - DA354A - Funktioner
HT22 - DA354A - Funktioner
 
HT15, DA354A - Funkioner
HT15, DA354A - FunkionerHT15, DA354A - Funkioner
HT15, DA354A - Funkioner
 
HT16 - DA354A - Funktioner
HT16 - DA354A - FunktionerHT16 - DA354A - Funktioner
HT16 - DA354A - Funktioner
 
HT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web appHT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web app
 
HT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottleHT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottle
 
HT18 - DA354A - Functions
HT18 - DA354A - FunctionsHT18 - DA354A - Functions
HT18 - DA354A - Functions
 
HT19 - DA354A - Funktioner
HT19 - DA354A - FunktionerHT19 - DA354A - Funktioner
HT19 - DA354A - Funktioner
 
HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3HT16 - DA156A - JavaScript 3
HT16 - DA156A - JavaScript 3
 
BigData med logganalys
BigData med logganalysBigData med logganalys
BigData med logganalys
 
Föreläsning om HTML
Föreläsning om HTMLFöreläsning om HTML
Föreläsning om HTML
 
VT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & BootstrapVT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & Bootstrap
 

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.pdf
Anton Tibblin
 
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbteknikerVT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
VT24 - jQuery & Ajax - Flerplattformsapplikationer med webbtekniker
Anton Tibblin
 
VT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutvecklingVT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutveckling
Anton Tibblin
 
DA395A - VT24 - JavaScript & Document object model
DA395A - VT24 - JavaScript & Document object modelDA395A - VT24 - JavaScript & Document object model
DA395A - VT24 - JavaScript & Document object model
Anton Tibblin
 
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbteknikerVT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
VT24 - DA395A - Kursintroduktion: Flerplattformsapplikationer med webbtekniker
Anton Tibblin
 
HT23 - DA354A - Webbprogrammering med Python
HT23 - DA354A - Webbprogrammering med PythonHT23 - DA354A - Webbprogrammering med Python
HT23 - DA354A - Webbprogrammering med Python
Anton Tibblin
 
HT23 - DA354A - Fil- och felhantering
HT23 - DA354A - Fil- och felhanteringHT23 - DA354A - Fil- och felhantering
HT23 - DA354A - Fil- och felhantering
Anton Tibblin
 
HT23 - DA354A - Listor och lexikon
HT23 - DA354A - Listor och lexikonHT23 - DA354A - Listor och lexikon
HT23 - DA354A - Listor och lexikon
Anton Tibblin
 
HT23 - DA354A - Kursintroduktion
HT23 - DA354A - KursintroduktionHT23 - DA354A - Kursintroduktion
HT23 - DA354A - Kursintroduktion
Anton 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 1
Anton Tibblin
 
HT23 - DA106A - Ramverk & Bibliotek
HT23 - DA106A - Ramverk & BibliotekHT23 - DA106A - Ramverk & Bibliotek
HT23 - DA106A - Ramverk & Bibliotek
Anton Tibblin
 
HT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScriptHT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScript
Anton Tibblin
 
HT23 - DA106A - Responsiv webbutveckling
HT23 - DA106A - Responsiv webbutvecklingHT23 - DA106A - Responsiv webbutveckling
HT23 - DA106A - Responsiv webbutveckling
Anton 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
 
Introduktion till CSS
Introduktion till CSSIntroduktion till CSS
Introduktion till CSS
Anton Tibblin
 
Kursintroduktion
KursintroduktionKursintroduktion
Kursintroduktion
Anton Tibblin
 
LocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - MediaLocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - Media
Anton Tibblin
 
jQuery & Ajax
jQuery & AjaxjQuery & Ajax
jQuery & Ajax
Anton 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
 
VT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutvecklingVT24 - Responsiv design & Ramverk inom webbutveckling
VT24 - Responsiv design & Ramverk inom webbutveckling
 
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)
 
Introduktion till CSS
Introduktion till CSSIntroduktion till CSS
Introduktion till CSS
 
Kursintroduktion
KursintroduktionKursintroduktion
Kursintroduktion
 
LocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - MediaLocalStorage - GeoLocation - Media
LocalStorage - GeoLocation - Media
 
jQuery & Ajax
jQuery & AjaxjQuery & Ajax
jQuery & Ajax
 

HTML - Tabeller och formulär

  • 4.
  • 5. Dagens Agenda • Repetition • Webbsidor, klient/server • Element för text/länkar/bilder • Tabeller • Hur, var, när, varför? • Grundläggande tabeller • Mer avancerade tabeller • Formulär • Hur, var, när, varför? • Att skicka data med HTML • Grundläggande formulärselement • HTML 5 & nya möjligheterna med formulär
  • 8. Resultat • En webbläsare visar oss en webbsida efter att ha renderat ett HTML-dokument
  • 9. Vad består en webbplats av? JavaScript CSS HTML Innehåll Interaktivitet Utformning Struktur Innehåll
  • 12. Element vi hittills tittat på • <h1>-<h6> • <p> • <em> • <strong> • <ul>, <ol> • <li> • <img> • <a>
  • 14.
  • 15.
  • 16.
  • 17.
  • 18. Tabeller •Tabeller är ett kraftfullt sätt att strukturera upp information • Strukturera upp data vid informationspresentation •Tänk ”excel”
  • 19. Tabeller - uppbyggnad • En tabell är, precis som i excel, uppbygg av rader och kolumner • Tabeller består oftast utav: • Tabellhuvud • Tabellrubriker • Tabellkropp • Tabelldata • Tabellfot • Tabellsammanfattning • En tabell består således utan • Rader • Kolumner
  • 20. Grundläggande element för tabeller • <table> Skapar en tabell • <caption> Beskrivning/rubrik för tabell • <tr> tabellrad (table row) • <th> Rubrik-kolumn (table header) • <td> Data-kolumn (table data) • Obs, alla taggarna har start- och slutttagg.
  • 21.
  • 22. Dags att rita tabeller! … och se hur det fungerar i HTML
  • 23. Mer avancerade tabellelement • <thead> Tabellhuvud • <tbody> Tabellkropp • <tfoot> Tabellfot • T.ex. <table> <thead>…</thead> <tbody>…</tbody> <tfoot>…</tfoot> </table>
  • 24. … fler möjligheter med tabeller •Det finns lägen då man inte vill att alla rader/kolumner ska se exakt lika ut: • En kolumn som sträcker sig över x antar kolumner
  • 25. Men behöver man <thead>, <tbody>, <tfoot>? • Det är semantiskt bra att förstå vilka delar av tabellen som innehåller vilken information • Det är enklare att formge de olika delarna av tabellen • Det är enklare för andra att förstå tabellen • Man kan t.ex. ”låsa” fast tabellhuvudet & tabellfoten och skrolla tabellinnehållet
  • 26.
  • 27. … fler möjligheter med tabeller •Det finns lägen då man inte vill att alla rader/kolumner ska se exakt lika ut: • En kolumn som sträcker sig över x antar rader
  • 29. Demo för tabeller I ett HTML-dokument
  • 30. Att skicka data genom HTML
  • 31.
  • 32. Varför formulär? •Vi vill skicka data till en server •Inloggningsuppgifter •Skapa twitter-post •Göra facebook-inlägg •Lägga till annan data i olika databaser •Vi ska i denna kurs bara fokusera på att skicka data inte vad som faktiskt händer med den när den kommer till servern.
  • 34.
  • 35. Översikt - olika element i ett formulär Knapp Text-fält (stort) Text-fält Checkboxar Radioknappar Drop-down meny
  • 36.
  • 37. Varför används formulär? • Ett sätt att skicka data från klienten (webbläsaren) till en server • Spara data • Validera data • Analysera data
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 44. Hmm, kan vi kolla på detta praktiskt också? https://www.google.se/search?q=Malmö universitet
  • 45. Att skapa ett formulär i HTML •Taggen <form> omsluter ett formulär. <form> har olika attribut: •”action” - Var formuläret ska skickas •”method” - På vilket sätt den data som användaren angett ska skickas. Antingen GET eller POST
  • 46.
  • 47. Översikt - olika element i ett formulär Knapp Text-fält (stort) Text-fält Checkboxar Radioknappar Drop-down meny
  • 48. Inhämtning av data från användaren • Detta kan göras av taggen <input> som kan representera olika delar av ett formulär • Notera att <input> är en öppen tagg och saknar sluttagg • Attribut: • Name Namnger input-elementet • Value Ev. värde på en knapp/i ett textfält • Type Vilken typ elementet ska vara t.ex. knapp/textfält/radioknapp/checkbox osv.
  • 50. Att skicka data med formulär • Data struktureras upp med: - Namn, hur man identifierar det man skickat - Värde, den information man skickar • T.ex. firstName=Anton lastName=Tibblin course=DA156A
  • 51.
  • 52. GET/POST • GET innebär att man skickar med den information som användaren angett genom URL (adressen till sidan) • POST innebär att man skickar informationen ”bakom kulisserna” • Standard är att man skicka mer GET (om inget annat anges)
  • 54.
  • 56. Inhämtning av data från användaren • Detta kan göras av taggen <input> som kan representera olika delar av ett formulär • Notera att <input> är en öppen tagg och saknar sluttagg • Attribut: • Name Namnger input-elementet • Value Ev. värde på en knapp/i ett textfält • Type Vilken typ elementet ska vara t.ex. knapp/textfält/radioknapp/checkbox osv.
  • 57. Exempel av input-taggen <input type=”text” name=”firstName” value=”Förnamn här”> <input type=”password” name=”password” value=”Lösen”> <input type=”button” value=”Min knapp”> <input type=”submit” value=”Skicka”> <input type=”radio” name=”choice”> <input type=”checkbox” name=”choice2”>
  • 58. Andra attribut för <input>-taggen • För checkboxar & radioknappar – om boxen ska vara inkryssad som standard: checked=”checked” <input type="checkbox" checked="checked"> <input type="radio" checked="checked">
  • 59. Gömda fält • Man kan även skicka vidare information från formulär genom gömda fält. • Det innebär att fältet ligger ”osynligt” i bakgrunden. • Även osynlig fält kan ha namn och värde • T.ex. <input type=”hidden” name=”namn” value=”anton”> • Detta kommer alltså inte att synas på HTML-sidan
  • 60. Textarea – För längre texter • Har till skillnad från <input> en start- och en sluttag. • Attribut: • name (samma funktion som för <input>) • rows, antalet rader (höjd på text-rutan) • cols, antalet kolumner (bredd på text-rutan) • <textarea cols=”10” rows=”3” name=”textfield”></textarea> • <textarea cols=”10” rows=”3” name=”textfield”>Hej</textarea>
  • 61. Select – Drop down-meny • Menyn definieras genom taggen <select></select> • Varje alternativ i drop down-menyn skapas genom taggen <option></option> • För att kunna veta namn och värde på det som skickas gör man: <select name=”namn”> <option value=”anton”>Anton</option> <option value=”kalle”>Kalle</option> <option value=”Johan”>Johan</option> </select>
  • 62. Etiketter för formulärselement • Beskriver imatningsfälten • Ökar användbarheten <label>Namn</label> <input type=”text” name=”namn”> Ännu bättre: <label for=”namn”>Namn</label> <input type=”text” name=”namn” id=”namn”>
  • 63. Nytt och roligt i HTML 5
  • 64. Användbara attribut •”reqiured”, göra ett fält obligatoriskt •”placeholder”, en exempeltext för fältet
  • 65. Nya typer för input (i formulär) • color • date • datetime • datetime-local • email • month • number • range • search • tel • time • url • Week • http://www.w3schools.com/html/html5_form_input_types.asp
  • 67. Autocomplete i formulär • <input list="browsers"> <datalist id="browsers"> <option value="Internet Explorer"> <option value="Firefox"> <option value="Chrome"> <option value="Opera"> <option value="Safari"> </datalist> • http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_datalist
  • 68. Att bygga ett formulär
  • 69. Bygga ett formulär – mot en webbserver http://mah.antontibblin.se/ia-gb