/ 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
CSS font-size, relativ i forhold til hvad?
Fra : Kim Noer


Dato : 04-10-04 14:05

Davsen der ...

Næste projekt jeg er hoppet ud i at få samme tekststørrelse i både Mozilla &
IE v6. Det er naturligvis noget af et cirkus, men det lader til at man skal
bruge em / % som enheder. Men hvis jeg f.eks. har en tekst, som har en
størrelse på 125%, og body er sat til 1em, hvilken størrelse har næste tekst
da? Er den i forhold til 125% eller 1em fra body? Kommer det an på hvilket
'tags' man har lige bagefter? Kan man pådutte en 'base-unit' som alle fonts,
der er relative, forholder sig til?

--
I doubt, therefore I might be.



 
 
Jens Gyldenkærne Cla~ (04-10-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 04-10-04 15:53

Kim Noer skrev:

> Næste projekt jeg er hoppet ud i at få samme tekststørrelse i både Mozilla &
> IE v6. Det er naturligvis noget af et cirkus, men det lader til at man skal
> bruge em / % som enheder.

Ikke hvis du vil tvinge den samme fontstørrelse igennem. Em og procent
er begge afhængige af brugerens standardstørrelse i browseren - og
dermed kan 1em godt være forskellig fra browser til browser.

> Men hvis jeg f.eks. har en tekst, som har en
> størrelse på 125%, og body er sat til 1em,

Lille note - der er ikke grund til at sætte font-størrelsen på body til
1em - det er den i forvejen.

> hvilken størrelse har næste tekst da? Er den i forhold til 125% eller
> 1em fra body?

Hvad mener du præcis med "næste tekst"? Hvis du har et eksempel online,
kan vi tage udgangspunkt i det.

Ellers kan du måske bruge følgende eksempel:
<http://www.gyros.dk/usenet/html/fontsize.shtml>


> Kommer det an på hvilket 'tags' man har lige bagefter?

Nej - ikke hvis vi forstår "bagefter" på samme måde.

I css-sammenhæng kan man se html-sider som en masse "bokse" der er inde
i eller ved siden af hinanden. Alle viste elementer på en side ligger i
body-kassen - og vil derfor arve egenskaber herfra hvis de ikke
nulstilles eller ændres på vejen.

Skriver man <body><div><p><span>Foo</span></p></div></body> - er teksten
"foo" css-påvirket af alle elementerne, først body, så div, dernæst p og
til sidst span.

Men når man skriver <div>Foo</div><p>Bar</p> er der ingen påvirkning fra
div-elementet til "Bar" og tilsvarende ingen påvirkning fra p til "Foo".


> Kan man pådutte en 'base-unit' som alle fonts, der er relative, forholder sig til?

Bestemt. Hvis du sætter en absolut størrelse på et element, vil den også
gælde for alle elementer der ligger inde i dette element.

--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Kim Noer (05-10-2004)
Kommentar
Fra : Kim Noer


Dato : 05-10-04 14:20

"Jens Gyldenkærne Clausen" <jens@gyros.invalid> wrote in message
news:1wvpbb2sb7xvc$.dlg@jcdmfdk.invalid

> Ikke hvis du vil tvinge den samme fontstørrelse igennem. Em og procent
> er begge afhængige af brugerens standardstørrelse i browseren - og
> dermed kan 1em godt være forskellig fra browser til browser.

Jeps, det er jeg bekendt med, det jeg ønsker i sidste ende er at ende med
samme skriftstørrelse i både Moz og IE når der IKKE er 'pillet' ved
'text-size' (medium i IE, 16px(?) i Moz).

> Skriver man <body><div><p><span>Foo</span></p></div></body> - er
> teksten "foo" css-påvirket af alle elementerne, først body, så div,
> dernæst p og
> til sidst span.
> Men når man skriver <div>Foo</div><p>Bar</p> er der ingen påvirkning
> fra div-elementet til "Bar" og tilsvarende ingen påvirkning fra p til
> "Foo".

Det var så lige det, jeg søgte at undgå, altså, at jeg ender med en
font-størrelse, der er afhængig af en anden størrelse, som igen er afhængig
af en tredie osv osv osv. Det kan dog skyldes at jeg stadigvæk hænger fast i
<table>, at jeg ender med den ballade?

>> Kan man pådutte en 'base-unit' som alle fonts, der er relative,
>> forholder sig til?
> Bestemt. Hvis du sætter en absolut størrelse på et element, vil den
> også
> gælde for alle elementer der ligger inde i dette element.

Jeps, men det jeg spurgte til var hvorvidt jeg f.eks. kunne sætte en
'relativ-absolut' størrelse, altså, 12pt er udgangspunkt, skriver jeg 100%
mener jeg 12pt. og ikke noget andet. Men stadigvæk således at brugeren kan
gå ind og gennemtvinge størrelsen (således de svagtseende mv. også har bare
en lille chance). Så snart jeg pådutter en absolut størrelser fjerner jeg
denne mulighed for 80%+ af brugere (IE ...).

--
I doubt, therefore I might be.



Torben Kristensen (06-10-2004)
Kommentar
Fra : Torben Kristensen


Dato : 06-10-04 23:21

On Tue, 5 Oct 2004 15:19:57 +0200, Kim Noer <kn@nospam.dk> wrote:

> Jeps, men det jeg spurgte til var hvorvidt jeg f.eks. kunne sætte en
> 'relativ-absolut' størrelse, altså, 12pt er udgangspunkt, skriver jeg
> 100% mener jeg 12pt. og ikke noget andet. Men stadigvæk således at
> brugeren kan gå ind og gennemtvinge størrelsen (således de svagtseende
> mv. også har bare en lille chance). Så snart jeg pådutter en absolut
> størrelser fjerner jeg
> denne mulighed for 80%+ af brugere (IE ...).

Så vidt jeg forstår slagsmålet om w3c standarder og de forskellige
browseres definitioner og fortolkninger heraf, er der ingen måde du kan
sikre dig en sådan kontrol på, uden at bruge px/pt/absolutte størrelser.

Har netop læst Zeldmans bog DWWS (http://www.zeldman.com/dwws/) og han
bruger et helt kapitel på at gennemgå kompromisser ved de forskellige
metoder man kan anvende. Jeg vil ikke gentage dem her, blot nævne at det
er et enormt emne og beskrive min metode pt.:

Brug px/abs. værdier hvis det er nødvendigt for dit layout, eller brug kun
ems/rel. værdier til brødtekst og sørg for at en ekstrem tekststørrelse i
IE ikke smadrer spalten/boxen teksten står i. Hvis det er for besværligt
at bruge ems til fx menuer der står i lister eller til headertekster
(fordi en forstørrelse af dem vælter din menuspalte fx), så lad være.
Vær ligeglad med at nogle værdier bliver ekstremt små ved laveste
tekststørrelse i IE, i den forventning at de af brugerne der i forvejen
benytter sig af at ændre tekststørrelsen, også har lært at
ctrl-scroll/menuen er 'lige i nærheden'.

eller:

Brug konsekvent px til alt, i den forventning, at de af brugerne der har
behov for zoom af browserens viewport alligevel bruger Opera ell. Mozilla
og derfor kan zoome alt uanset abs./rel. værdier.
Den tilgang overflødiggør også evt. styleswitchers med interfaces til at
ændre tekststørrelsen (som fx på http://iht.com), men naturligvis ikke at
man anviser brugerne en zoom metode, hvilket nok ville blive noget i
retning af: skift browser hvis du vil zoome.

> Det var så lige det, jeg søgte at undgå, altså, at jeg ender med en
> font-størrelse, der er afhængig af en anden størrelse, som igen er
> afhængig af en tredie osv osv osv. Det kan dog skyldes at jeg stadigvæk
> hænger fast i at jeg ender med den ballade?

Nej, men du skal have styr på din inheritance, som Jens forklarede med
'påvirkning'. For at undgå at dine font-sizes i 3. niveau bliver fx 80% af
90% af 120%, skal du arbejde i ems på alle elementer i body. Fordi 0.8em
er det samme som 80% af størrelsen af et M i den aktulle skrifttype,
fremfor 80% af den størrelse der er angivet i body eller af din brugers
indstillinger. Eksempel her, prøv at ændre tekststørrelse i IE:
http://stormt.1go.dk/test/txt_sizing/textsizing_test.html

Selv prøver jeg at arbejde i rene relative værdier overalt, bortset fra
enkelte vertikale afstande (margin-top fx) og at designe efter
proportioner mellem sidens dele i stedet for et pixel-perfekt layout. Men
har du masser af billeder og logoer og den slags i spil, og dermed behov
for fixed-widths, giver den metode store udfordringer.

Hvis du bruger relative værdier, kan denne metode anbefales (se link
nederst i teksten for aktuel metode):
http://www.thenoodleincident.com/tutorials/box_lesson/font/index.html

Forbehold: jeg har ikke gennemtestet nogle af alle disse metoder, og kan
ikke udelukke fejl eller mangler - men glæder mig til at høre om dem :)

--
mvh Torben

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408936
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste