/ Forside / Teknologi / Udvikling / HTML / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
HTML
#NavnPoint
molokyle 11184
Klaudi 5506
bentjuul 3377
severino 2040
smorch 1950
strarup 1525
natmaden 1396
scootergr.. 1320
e.c 1150
10  miritdk 1110
<html> vs. <body>
Fra : Kurt Hansen


Dato : 03-05-11 16:19

Jeg har forsøgt at finde ud af de grundlæggende forskelle på <html> og
<body>. Af de mange og meget forskellige resultater og søgningen kan
jeg udlede, at jeg ikke er den første der er i vildrede.

En forsigtig konklusion må indeholde følgende:

<body> har, i modsætning til <html>, en defaultværdi på 8px for
margin, men ingen af dem en defaultværdi for padding, hvorfor en
nulstilling af sidstnævnte er overflødig.

Begge kan forsynes med 'background-color'. Hvis man undlader at
nulstille margin, vil ...

html { background-color: yellow; }
body { background-color: red; }

.... vise en rød flade med en gult kant/ramme (8px). De 8px kan
naturligvis overskrives med CSS og tildeles en anden værdi.

Endvidere er der en kalamitet med overflow og scroll. Det har jeg
forsøgt at danne mig et overblik over, men jo flere fundne sider jeg
kigger igennem, jo mere forvirret bliver jeg.

Jeg mener at kunne fastslå, at <html>, som default antager
"overflow:auto". Da <html> jo styrer hele browservinduet betyder det
vel bare, at hvis der ikke er plads nok i højden, dannes der
automatisk scrollbars i vinduet. Det må være så grundlæggende en ting,
at jeg har vanskeligt ved at forestille mig, at nogen browser - også i
ældre udgaver - ikke opfører sig sådan.

Det anbefales flere steder (nogle angiveligt i forhold til IE, andre
at det skulle være af hensyn til FF) at sætte følgende:

html { overflow-y: scroll; }

- hvilket Jørgen Farum Jensen også nævnte for nyligt. Det forstår jeg
simpelthen ikke og min fantasi rækker ikke til at konstruere et
eksempel, hvor jeg kan teste det.

<html> og <body> er block-level elementer og har et indbyrdes
parent/child-forhold. Har det noget at gøre med, at <body> derfor
arver "overflow:auto"? Og hvad er problemet? Opfører "overflow:auto"
sig ikke altid som ønsket/forventet?

Bortset fra ovenstående, er der så nogen der kan komme i tanker om
noget man kan/skal manipulere med i <html>?

Og ja ... jeg ved naturligvis godt, at <html> indeholder
<head></head>, men det er jo en helt anden sag.
--
Venlig hilsen
Kurt Hansen

Sælges: Lejlighed med udsigt over grønt område og parketgulv.

 
 
Kim Ludvigsen (03-05-2011)
Kommentar
Fra : Kim Ludvigsen


Dato : 03-05-11 16:45

Den 03-05-2011 17:18, Kurt Hansen skrev:

> Det anbefales flere steder (nogle angiveligt i forhold til IE, andre
> at det skulle være af hensyn til FF) at sætte følgende:
>
> html { overflow-y: scroll; }
>
> - hvilket Jørgen Farum Jensen også nævnte for nyligt. Det forstår jeg
> simpelthen ikke og min fantasi rækker ikke til at konstruere et
> eksempel, hvor jeg kan teste det.

Det er meget nemt. Lav en kort og en lang side med en
midterstillet boks.

Forskellen er, at Firefox som standard ikke afsætter plads
til en rullebjælke, medmindre siden er længere end
indholdsruden. Det betyder, at hvis du har en midterstillet
boks, vil den rykke sig, når du skifter mellem en kort og en
lang side, fordi midten ikke er det samme sted.

Koden indsætter en rullebjælke på alle sider, så forskellen
ikke opstår.

--
Mvh. Kim Ludvigsen
Tips til hjemmesidesnedkeren:
http://kimludvigsen.dk/tips-internet-websnedker.php

Birger Sørensen (03-05-2011)
Kommentar
Fra : Birger Sørensen


Dato : 03-05-11 17:14

Kurt Hansen udtrykte præcist:
> Jeg har forsøgt at finde ud af de grundlæggende forskelle på <html> og
> <body>. Af de mange og meget forskellige resultater og søgningen kan
> jeg udlede, at jeg ikke er den første der er i vildrede.
>
> En forsigtig konklusion må indeholde følgende:
>
> <body> har, i modsætning til <html>, en defaultværdi på 8px for
> margin, men ingen af dem en defaultværdi for padding, hvorfor en
> nulstilling af sidstnævnte er overflødig.
>
> Begge kan forsynes med 'background-color'. Hvis man undlader at
> nulstille margin, vil ...
>
> html { background-color: yellow; }
> body { background-color: red; }
>
> ... vise en rød flade med en gult kant/ramme (8px). De 8px kan
> naturligvis overskrives med CSS og tildeles en anden værdi.
>
> Endvidere er der en kalamitet med overflow og scroll. Det har jeg
> forsøgt at danne mig et overblik over, men jo flere fundne sider jeg
> kigger igennem, jo mere forvirret bliver jeg.
>
> Jeg mener at kunne fastslå, at <html>, som default antager
> "overflow:auto". Da <html> jo styrer hele browservinduet betyder det
> vel bare, at hvis der ikke er plads nok i højden, dannes der
> automatisk scrollbars i vinduet. Det må være så grundlæggende en ting,
> at jeg har vanskeligt ved at forestille mig, at nogen browser - også i
> ældre udgaver - ikke opfører sig sådan.
>
> Det anbefales flere steder (nogle angiveligt i forhold til IE, andre
> at det skulle være af hensyn til FF) at sætte følgende:
>
> html { overflow-y: scroll; }
>
> - hvilket Jørgen Farum Jensen også nævnte for nyligt. Det forstår jeg
> simpelthen ikke og min fantasi rækker ikke til at konstruere et
> eksempel, hvor jeg kan teste det.
>
> <html> og <body> er block-level elementer og har et indbyrdes
> parent/child-forhold. Har det noget at gøre med, at <body> derfor
> arver "overflow:auto"? Og hvad er problemet? Opfører "overflow:auto"
> sig ikke altid som ønsket/forventet?
>
> Bortset fra ovenstående, er der så nogen der kan komme i tanker om
> noget man kan/skal manipulere med i <html>?
>
> Og ja ... jeg ved naturligvis godt, at <html> indeholder
> <head></head>, men det er jo en helt anden sag.

HTML, XHTML, XML - der har været diskuteret en del.
<html>
<head>
...
</head>
<body>
...
</body>
</html>

<head> indeholder title , meta, andre referancer.
<body> indeholder indholdet af siden.
<html> elementet er blot det der samler de to.
SGML kræver at der kun er eet "element" i dokumentet. HTML, XHTML, og
XML er afarter af SGML. Derfor <html> tagget. Det er helt enkelt en
wrapper for <head> og <body>.

<html> og <head> med indhold, har ikke nogen CSS, fordi de ikke har
nogen repræsentation på skærmen. Det er kun <body> (med indhold) der
har det.

Der er så, som du har opdaget, nogen "quirks", som egentlig fortaber
sig i fortiden, og uenighed browserfabrikanter imellem, om tolkning, og
derfor kan visse ting sættes i CSS i <html>, men bør IMHO så vidt
muligt undgås - fabrikanterne er stadig ikke enige om tolkningen.

Et af disse "quirks" er scrollbaren i FF der ikke er der, når den ikke
skal bruges - hvilket kan virke som at billedet rykker, når den
vises/fjernes, og man kan bruge CSS på <html> til permanent at sætte en
lodret scrollbar i FF.
Men <html> har ikke nogen CSS! (html, head, meta, etc., har heller ikke
mulighed for at reagere på events)

[
http://www.w3.org/TR/html401/struct/global.html#edef-HTML - bemærk
fraværet af style! som du ellers ser, ved elementer der vises på
skærmen, som f.eks.
http://www.w3.org/TR/html401/struct/global.html#edef-DIV
]

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Kurt Hansen (03-05-2011)
Kommentar
Fra : Kurt Hansen


Dato : 03-05-11 18:00

Tue, 03 May 2011 18:13:58 +0200 skrev Birger Sørensen:

>Kurt Hansen udtrykte præcist:
>> Jeg har forsøgt at finde ud af de grundlæggende forskelle på <html> og
>> <body>. Af de mange og meget forskellige resultater og søgningen kan
>> jeg udlede, at jeg ikke er den første der er i vildrede.

><html> og <head> med indhold, har ikke nogen CSS, fordi de ikke har
>nogen repræsentation på skærmen. Det er kun <body> (med indhold) der
>har det.

Ikke desto mindre KAN <html> styles med f.eks. 'background_color'. Om
det så er anbefalelsesværdigt anno 2011, er en anden sag.

Kan vi blive enige om, at den meget hyppigt anvendte:

html, body {
   margin: 0px;
   padding: 0px;
   }

- kan koges ned til:

body {
   margin: 0px;
}

Tak til både dig og Kim for afklaring omkring scrollbars. Jeg MÅ have
vished og se det med mine egne øjne, så jeg vil lege lidt med det
--
Venlig hilsen
Kurt Hansen

Sælges: Lejlighed med udsigt over grønt område og parketgulv.

Birger Sørensen (03-05-2011)
Kommentar
Fra : Birger Sørensen


Dato : 03-05-11 18:40

Kurt Hansen skrev den 03-05-2011:
> Ikke desto mindre KAN <html> styles med f.eks. 'background_color'. Om
> det så er anbefalelsesværdigt anno 2011, er en anden sag.

Ikke ifølge standarderne.
At det kan lade sig gøre - og hvad der kan lade sig gøre - er afhængigt
af browseren. Og altså ikke noget, man kan bruge til alle, ellers ens i
alle browsere.

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Kurt Hansen (04-05-2011)
Kommentar
Fra : Kurt Hansen


Dato : 04-05-11 09:46

Tue, 03 May 2011 19:40:25 +0200 skrev Birger Sørensen:

>Kurt Hansen skrev den 03-05-2011:
>> Ikke desto mindre KAN <html> styles med f.eks. 'background_color'. Om
>> det så er anbefalelsesværdigt anno 2011, er en anden sag.
>
>Ikke ifølge standarderne.
>At det kan lade sig gøre - og hvad der kan lade sig gøre - er afhængigt
>af browseren. Og altså ikke noget, man kan bruge til alle, ellers ens i
>alle browsere.

Tø-hø, faldt lige over denne her:
http://meyerweb.com/eric/css/discuss/examples/all-shown.html
--
Venlig hilsen
Kurt Hansen

Sælges: Lejlighed med udsigt over grønt område og parketgulv.

Birger Sørensen (04-05-2011)
Kommentar
Fra : Birger Sørensen


Dato : 04-05-11 10:57

Kurt Hansen forklarede:
> Tue, 03 May 2011 19:40:25 +0200 skrev Birger Sørensen:
>
>> Kurt Hansen skrev den 03-05-2011:
>>> Ikke desto mindre KAN <html> styles med f.eks. 'background_color'. Om
>>> det så er anbefalelsesværdigt anno 2011, er en anden sag.
>>
>> Ikke ifølge standarderne.
>> At det kan lade sig gøre - og hvad der kan lade sig gøre - er afhængigt
>> af browseren. Og altså ikke noget, man kan bruge til alle, ellers ens i
>> alle browsere.
>
> Tø-hø, faldt lige over denne her:
> http://meyerweb.com/eric/css/discuss/examples/all-shown.html

;>)
Jeg siger ikke, at det ikke kan lade sig gøre.
Der findes ingen standarder for det, og det du ser, er helt op til
browseren - og et gæt er, at det ikke er det samme i alle browsere.

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Søg
Reklame
Statistik
Spørgsmål : 177416
Tips : 31962
Nyheder : 719565
Indlæg : 6407859
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste