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

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Font size
Fra : Ryan Kristensen


Dato : 02-07-03 00:58

Hej.

Jeg fik lige at vide at min side var ulæselig, da skrifttypen var for lille.
Forklarede så personen, at han skulle indstille sin font size til medium i
ie, hvilket han overhovedet ikke var klar over at man kunne.
Problemet er, at hans evner på en computer, nok er det jeg skal regne med
størstedelen af mine besøgnede har.
Efter en hurtig gang søgning fandt jeg følgende
(http://www.thenoodleincident.com/tutorials/box_lesson/font/matt_round.html)
:

function emsTweak()
{
if ((document.createElement) && (document.createTextNode))
{
document.writeln('<div id="emsTest" style="position:absolute;
visibility:hidden; font-family:arial,helvetica,sans-serif">&nbsp;<br
/>&nbsp;<br />&nbsp;<br />&nbsp;<br />&nbsp;<br /></div>');
var scaling=100;
if ((navigator.platform=="Win32") && (navigator.appName=="Microsoft
Internet Explorer")) scaling=105;
var h=999;
if (document.getElementById('emsTest').clientHeight)
h=parseInt(document.getElementById('emsTest').clientHeight);
else if (document.getElementById('emsTest').offsetHeight)
h=parseInt(document.getElementById('emsTest').offsetHeight);
if (h<85) document.body.style.fontSize=Math.round(scaling*90/h)+"%";
}
}

Jeg har ikke set det nævnt her før, så jeg er lidt i tvivl om, det er fordi,
det er en dårlig løsning eller hvad.

--
Ryan





 
 
Lasse Reichstein Nie~ (02-07-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 02-07-03 03:57

"Ryan Kristensen" <ryan@NOSPAM.dk> writes:

> Jeg fik lige at vide at min side var ulæselig, da skrifttypen var for lille.
> Forklarede så personen, at han skulle indstille sin font size til medium i
> ie, hvilket han overhovedet ikke var klar over at man kunne.
> Problemet er, at hans evner på en computer, nok er det jeg skal regne med
> størstedelen af mine besøgnede har.
> Efter en hurtig gang søgning fandt jeg følgende
> (http://www.thenoodleincident.com/tutorials/box_lesson/font/matt_round.html)
> :
....
> Jeg har ikke set det nævnt her før, så jeg er lidt i tvivl om, det er fordi,
> det er en dårlig løsning eller hvad.

Jeg ville foretrække ikke at lave tekst mindre end 1em, så skulle den slags
gøgl ikke være nødvendig. Ellers er det da en af de sikrere metoder, da den
ikke kan gøre tekst mindre, kun større.

Man kan så overveje om de minimum 17 pixels per linje ikke er
temmeligt arbitrære. Min browser har en minimum-font-størrelse på 6
pixels (ja, det er indbygget i moderne browsere, hvilket IE ikke
kvalificerer sig som, ... men det ændrer jo ikke på dine brugeres
demografi)

Det er dog ikke særlig god kode. Den tester for eksistensen af
document.createElement og -.createTextNode, men bruger dem ikke.
Den laver gentagne kald til getElementById, hvor et ville være nok.

En bedre version der gør det samme (uafhængigt af om man kan lide
metoden eller ej) er:

function emsTweak() {
if (document.getElementById || document.all) {
document.writeln('<div id="emsTest" style="position:absolute;'+
'visibility:hidden; ">&nbsp;<br />&nbsp;<br />&nbsp;<br />&nbsp;'+
'<br />&nbsp;<br /></div>');
var scaling = 100;
if ((navigator.platform == "Win32") &&
(navigator.appName == "Microsoft Internet Explorer")) {
scaling = 105;
}
var elem = document.getElementById?
document.getElementById("emsTest"):
document.all["emsTest"];
var h = elem.clientHeight || elem.offsetHeight || 999;
if ( h < 85 ) {
document.body.style.fontSize = Math.round(scaling*90/h)+"%";
}
}
}


Jeg fjernede font-family fra writeln'en. Det er bedre at arve den
font der faktisk bruges end at hard-code Arial.



/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'

Ryan Kristensen (02-07-2003)
Kommentar
Fra : Ryan Kristensen


Dato : 02-07-03 11:39

> Jeg ville foretrække ikke at lave tekst mindre end 1em, så skulle den
slags
> gøgl ikke være nødvendig. Ellers er det da en af de sikrere metoder, da
den
> ikke kan gøre tekst mindre, kun større.

Ja 0,8em er jo ikke særlig stor. Det var også det der gjorde, at jeg
skiftede fra px.
Tak for den pænere kode.
Kunne det evt. være smart, at sætte det ind i en IE kommentar. Da jeg tror
mit problem primært rammer ie brugerne.

--
Ryan



Daniel (02-07-2003)
Kommentar
Fra : Daniel


Dato : 02-07-03 15:15


"Ryan Kristensen" <ryan@NOSPAM.dk> wrote in message
news:3f02b68d$0$5181$edfadb0f@dread11.news.tele.dk...
> Kunne det evt. være smart, at sætte det ind i en IE kommentar. Da jeg tror
> mit problem primært rammer ie brugerne.

Hej, Ryan.

Det forstår jeg ikke helt, for hvis jeg bruger stylesheets i IE, betyder det
ikke noget, hvad brugerne sætter text-size til i deres indstillinger. Den
nye Safari-browser til Mac'en ignorerer derimod stylesheets og
forstørrer/formindsker skrifttyperne som det passer den (jeg hader, når
browsere gør sådan noget! GRRR!). Jeg troede faktisk, det var til andre
browsere end IE, du ville bruge scriptet.

Daniel



Ryan Kristensen (06-07-2003)
Kommentar
Fra : Ryan Kristensen


Dato : 06-07-03 18:43

> Det forstår jeg ikke helt, for hvis jeg bruger stylesheets i IE, betyder
det
> ikke noget, hvad brugerne sætter text-size til i deres indstillinger.

Det kommer an på hvad du bruger som enhed. Hvis du bruger px, så kan man
ikke ændre størrelsen, med mindre man bruger en browser som kan overskrive
et stylesheet med et brugervalgt.
Hvis man bruger em som enhed, så kan man vælge skriftstørrelsen, sådan så
svagtseende o.l. kan se indholdet på en hjemmeside.
IE har det "problem", at man ved hjælp af en genvejstast kan ændre font size
indstillingen, og da mange ikke er klar over muligheden for at ændre
skriftstørrelsen, betyder det at de ikke er klar over, at de ser siden med
mindre/større skrifttype end det der måske lige er tænkt for designerens
side.
Man bør lave et design, så dette ikke har nogen betydning, men i mit
tilfælde blev teksten ulæselig hvis man valgte en skrifttype der var mindre
end "medium" i IE. Og derfor søgte jeg efter en midlertidig løsning, indtil
jeg får lavet mit nye design færdigt.

> Den nye Safari-browser til Mac'en ignorerer derimod stylesheets og
> forstørrer/formindsker skrifttyperne som det passer den (jeg hader, når
> browsere gør sådan noget! GRRR!). Jeg troede faktisk, det var til andre
> browsere end IE, du ville bruge scriptet.

Det er da netop det fede. Her kan brugeren selv lave skrifttypen som han vil
have den. På den måde kan alle besøgende læse hvad man har skrevet. Da man
må gå ud fra, at de ved hvad de laver af indstillinger. Hellere det end en
at brugerne ikke kan få noget ud af indholdet, da skriftstørrelsen er for
lille.


FUT dk.edb.internet.webdesign.html

--
Ryan



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste