Font grootte

Status
Niet open voor verdere reacties.

Paul-RT

Giga Honourable Senior Member †
Lid geworden
6 dec 2003
Berichten
10.886
Hallo.

Ik heb sinds 2 dagen een eigen domeinnaam, een hosting, en een index.html.
Die index blijst staan, totdat de echte page klaar is.

Mijn kennis van html is nihil.

Samen met een andere forum / chat bezoeker ben ik al een eindje gekomen, maar we staren blind naar een font-issue.
HTML:
<align="middle" font-size="20"> <b>Aan deze pagina wordt gewerkt. Nog even geduld alstublieft.></font></b><BR><BR><BR>

De tekst moet in het midden van het scherm komen, vet gedrukt, en een beetje grotere letter.

Waar gaat het fout?
 
Zoiets?
HTML:
<h1 style="text-align: center">Aan deze pagina wordt gewerkt.<br> 
Nog even geduld alstublieft.</h1>
Dan wordt het zoiets:
Aan deze pagina wordt gewerkt.
Nog even geduld alstublieft.

Met vriendelijke groet,
CSShunter
 
Waar gaat het fout?
Hoi Paul,
Wat er eigenlijk fout ging is dat je je html syntax een beetje door de war haalt:
HTML:
<font size="20"><b>Aan deze pagina wordt gewerkt. Nog even geduld alstublieft.</b></font>
en daar kun je dan nog een
HTML:
<div align="center">  (andere html hier) </div>
omheen zetten om het in het midden te krijgen
 
Hoi Paul-RT,
Alle verandering is nog geen verbetering... :eek:
Helaas bevat de code hierboven 3 html-fouten:
  • <font> is fout.
  • <font size="20"> is fout.
  • <div align="center"> is fout.
Kijk.

Toelichting:
  • Hoewel het nog steeds in op internet rondspokende tutorials staat (en vermoedelijk ook in een aantal leerboeken): de <font> tag is al ruim 10 jaar geleden - december 1999, toen de w3c-standaard html4.01 werd ingevoerd - tot zg. "deprecated" (= afgekeurde) html verklaard. Zie hier.
  • Voor het size-attribuut in combinatie met <font> geldt hetzelfde: afgekeurd
  • En voor het align-attribuut ook.
  • Tenslotte is de <b> tag nu nog net wel valid html, maar het gebruik wordt sterk afgeraden, en in de in aantocht zijnde html5 wordt de <b> helemaal verbannen: dan is het ook fout.
De suggesties die ik gedaan had, zijn wel geldige html. Kijk.

Toelichting:
  • Geldige html is de basis voor goede presentatie in alle browsers onder alle operating systems. Dan nog zijn er browser-bugs die dingen in de war kunnen sturen, maar zonder goede basis gaat het vroeg of laat zeker fout.
  • In het begin bestond html alleen uit enkele supereenvoudige codes: geschikt om platte tekst en wat kop-formaten weer te geven. Na een aantal jaar, toen internet een grotere vlucht nam dan alleen een handjevol universiteiten en wetenschappelijke instituten, ontstond de behoefte om webpagina's "mooi" te maken: meer grafische opmaak. Zo kwamen er allerlei toevoegsels als <font>, <b>, <center>, <align> en dergelijke in de html terecht.
  • Later werden de CSS (cascade style sheets) uitgevonden, met een speciale code-taal voor alle opmaak-zaken. Daarmee werd het mogelijk de html weer terug te brengen tot de pure vorm, en alle layout in een apart stylesheet te zetten dat in de <head> van de html-pagina wordt aangehaakt. Binnen de html werden aanknopingspunten gecreëerd: met een ID (een unieke IDentificatie) van een element, of met een class (voor meervoudig gebruikt op de pagina).
  • Behalve zuivere html-koffie heeft css nog een ander buitengewoon handig voordeel: met één stylesheet kan je de opmaak van alle pagina's regelen. De opmaak hoeft dus niet in alle pagina's verdisconteerd te worden: de link naar het stylesheet is genoeg. En dat scheelt (a) downloadtijd, maar vooral niet te versmaden (b) werk! Als bv. door een nieuwe huisstijl de achtergrondkleur van een website moet veranderen, dat hoef je die maar op één punt te veranderen (in het stylesheet), en alle pagina's krijgen in één klap dezelfde nieuwe kleur.
  • De laatste jaren heeft strikte scheiding van structuur/inhoud (html), opmaak (css) en functionaliteit (scripts) steeds meer terrein gewonnen; dat levert ook op nog een heleboel andere punten voordeel op (bv. betere toegankelijkheid voor zoekmachines en mensen). - Deze scheiding maakt ook deel uit van het officiële Kwaliteitsmodel Webrichtlijnen.

  • In mijn suggestie heb ik met de <h1> twee vliegen tegelijk geraakt. Een <h1> is een kop "van het hoogste niveau", d.w.z. pittig groot. Bovendien zijn koppen altijd automatisch vet.
  • De style="text-align: center" is de css-manier om aan te geven dat de tekst van een element gecentreerd moet worden weergegeven.
  • Voordat ik op m'n kop krijg wegens inconsistentie: dit is geen apart stylesheet, maar "inwendig css". Als het gaat om een voorlopige pagina met maar enkele regels, dan mag dat van mij. :D
Wat een verhaal! - Ik heb in elk geval goedgemaakt dat ik in m'n eerste reactie wel een oplossing aandroeg, maar niet de gevraagde verklaring gaf van wat er fout ging. ;)

Met vriendelijke groet,
CSShunter

[edit]Ingeving! Betekent "in het midden" ook dat de tekst verticaal op de helft van het beeldscherm moet komen?[/edit]
 
Laatst bewerkt:
Allen dank voor de info.
De oplossing van Rene Dirks heb ik erin gezet, en die werkt prima.

Helaas kan ik de page (nog) niet laten zien. Hij is commercieel.
Komt wel binnenkort.....
 
Ik weet dat mijn oplossing niet conform de regels is, maar ik vond dat het belangrijker was dat Paul kon zien waarom het fout ging. En voor een simpele 'under construction' pagina maakt het niet zo veel uit of dat het allemaal nog w3c. Als je het principe door hebt kun je naar css en styles gaan kijken.
Als je nu begint met programmeren schrijf je ook een compleet nutteloze 'hello workd' applicatie en ga je je niet meteen verdiepen in classen, inheritance en variabele life spans. Dat komt later vanzelf wel.
 
Maar dat "Hello world" moet je dan wel op de correcte manier schrijven, en zoals CSShunter aangaf is dat niet het geval met jouw "oplossing". Ik vind het dan ook niet echt een oplossing, maar een lapmiddel.

Paul, ik snap dat de oplossing van René "werkt", maar ik raad je toch echt aan om je aan de standaarden te houden in verband met problemen in de toekomst (ik ga niet het verhaal van CSSHunter herhalen, maar hij heeft absoluut gelijk). Daarnaast, als je dit samen met een medeforummer doet en die komt met die code... Dan zou ik je persoonlijk aanraden een andere partner te kiezen. Als je wilt kan ik je wel eens lijstje PM'en met héle competente forummers, die niet met zoiets op de proppen zullen komen.
 
Laatst bewerkt:
Daar heb je gelijk. Dus Paul, vergeet maar wat ik gezegd heb en doe het maar volgens het boekje.
 
Verschil zit em wel in het feit dat ik de oplossing van Rene snap, en van csshunter niet.....
En dat http://validator.w3.org/ het verhaal foutloos goedkeurd.
This document was successfully checked as HTML 4.0 Transitional!

Ik wil deze "hello world" omzetten naar xhtml. Gewoon om uit te proberen.
(Aan rader van Base)


Maar goed, csshunter, ik zal proberen er iets van te begrijpen.
Heb een en ander met align op center gezet, maar ook een afbeelding op right.
Heb je een link met geldige html-code?
 
Laatst bewerkt:
(Edit: deze stond op parkeren, in afwachting van browsershots-resultaten, en had ik gemaakt voor de laatste reacties)
Tja, als je de keus hebt tussen een valid en een invalid html-oplossing? :eek:
In elk geval werkt 't volgens browsershots.org niet in de Dillo-browser (de <font size="20"> werkt niet):
fontsize-dillo-klein.png
(vergroot)​
In het algemeen:
  • Er zijn zeker zo'n 40 à 45 verschillende browsers in omloop. Met valid html maak je de meeste kans dat alles er in alle browsers hetzelfde uitziet.
  • Met invalid html ben je aangewezen op de foutafhandeling van de browser. En voor foutafhandeling zijn geen standaarden (te maken)! Dan gaat de browser raden wat de bedoeling zal zijn geweest, - en dan raden verschillende browsers vaak iets anders. Daar gaat je pagina!
  • Verder houden ook zoekmachines niet erg van invalid code.
  • Bij een commerciële site lijkt een goede pagina me des te belangrijker: anders loop je het risico dat je klanten mist /ergert - terwijl dat helemaal niet hoeft.
Ergo: voor de rest van de site zou ik zeker proberen de html-validator tevreden te stellen.
En als het even kan: ook de Quickscan van het Kwaliteitsmodel webrichtlijnen. Daarmee zit je nog niet 100% snor qua toegankelijkheid, maar je bent een heel eind op weg.

Met vriendelijke groet,
CSShunter

Edit: wordt vervolgd n.a.v. laatste vraag

PS:
Ik zou eigenlijk wel graag een 808-pagina ingevoerd willen hebben:
Code:
[FONT="Courier New"][SIZE="2"][COLOR="DarkRed"][SIZE="3"][B]808[/B][/SIZE]
De aangevraagde webpagina bevat ongeldige code en kan niet getoond worden.
U gelieve zich te wenden tot de webmaster.[/COLOR][/SIZE][/FONT]
Zouden meteen een flink aantal (al dan niet WYSIWYG) web-editors door de mand vallen. :D
Voor de homepages van webdesign-bureaus steek ik ook mijn hand niet in het vuur (een eenvoudige html-check laat al gauw zien wat voor vlees je in de kuip hebt; leuk om te doen). ;)
 
Wat ik niet erg snap, is dat jullie praten over ongeldige html-code.
De code werkt, en wordt goedgekeurd volgens

Inmiddels heb ik dit staan:
HTML:
<!-- Tekst -->
<div align="center"><font size="10"><b>Aan deze pagina wordt gewerkt.<BR>
	Nog even geduld alstublieft.</b></font></div><BR><BR><BR>

Geeft het resultaat uit de bijlage.

Helaas kan ik vooralsnog geen link van de page plaatsen. Commerciele toestemming wel aangevraagd bij helpmij :)
 
Hoi Paul,
This document was successfully checked as HTML 4.0 Transitional !
Ja, dat zou goed kunnen kloppen ook.
Maar de "Transitional" variant van de "echte" html-standaard (de "html Strict") is alleen bedoeld als overgangsversie, zolang browsers nog niet goed ondersteuning geven aan stylesheets:
HTML 4.01 Transitional includes presentation attributes and elements that W3C expects to phase out as support for style sheets matures.
Authors should use the Strict DTD when possible, but may use the Transitional DTD when support for presentation attribute and elements is required.


Zie: www.w3.org/TR/html401/sgml/loosedtd.html
Nu dateert html4.01 van 10 jaar geleden, en intussen is zelfs Internet Explorer gaan leren steeds beter met stylesheets om te gaan. Dus als het niet persé hoeft (en het hoeft nu bijna nooit): géén Transitional maar Strict gebruiken, zeker bij een nieuwe site die nog een tijdje mee moet.

Met het Strict DOCtype protesteert de html-validator tegen codes met <font>, align, enz erin. Want dat zijn opmaak-eigenschappen, en die horen niet in de html thuis. Vandaar dat dergelijke html-code als invalid wordt bestempeld.

Ha, was even weg; ik zie dat de vraag intussen hierop is toegespitst.
In een volgende reactie zal ik uitleg geven over hoe het werkt bij mijn oplossing + wat nieuwe illustraties + de xhtml-variant (en wat opmerkingen daarover).

Wordt ... vervolgd!
CSShunter
 
Dus als ik kan aanpassen naar xhtml? Dan gaat het wel goed?
 
Xhtml heeft (op dit moment) ook (nog) een Strict- en een Transitional-versie.
Daar zou ik dus ook de Strict nemen, zoals w3.org aanbeveelt voor nieuwe pagina's/sites.
En dan valideert de huidige code niet.

Jerommeke zegt: "Even paar stappen overslaan ... meteen ter zake":
Maar met welk argument het xhtml ipv gewone html zou moeten zijn, weet ik niet.

Met vriendelijke groet,
CSShunter
 
Laatst bewerkt:
Even over strict, transitional, xhtml of html.
Uiteraard moet je het allemaal zelf weten. Maar.
Tot 'n jaar of zo geleden zag het ernaar uit dat html zou verdwijnen, en dat xhtml zou blijven bestaan. Inmiddels is het precies omgekeerd: html is de toekomst, xhtml niet meer. De redenen zal ik je besparen.
Op zich maakt het weinig uit wat je gaat gebruiken, want de komende (en deels al in gebruik zijnde) html5 kan met beide overweg. Maar er is eigenlijk geen enkele reden meer om xhtml te gebruiken.

Goed, er is 'n html5 onderweg. In die versie mogen tags als <font> enz. gewoon stomweg helemaal niet meer worden gebruikt. Punt. Discussie overbodig, want w3c, microsoft, mozilla, apple, Opera, noem maar op, zijn het daarover eens. Dus de kans dat jij of ik ze van mening kunnen doen veranderen, is, vrees ik, vrij klein...
Als je nu met strict werkt, kun je straks probleemloos over naar html5, zonder enige wijziging. En dat is uiterst nuttig, want html5 heeft echt 'n ongelooflijke hoeveelheid nieuwe en leuke dingen (die deels al werken trouwens, want html5 wordt geleidelijk ingevoerd).
Als je met transitional werkt en tags als <font> en <align> gebruikt, kun je straks niet met html5 werken. Dan moet je alles alsnog ombouwen.

Dus ook al is transitional nu geldig, het is een doodlopende weg. Alleen bedoeld voor bestaande sites waar het te veel werk ik om die om te bouwen.
 
Laatst bewerkt:
Zo, dat lijkt me wel afdoende. :)
Nu kan ik met een gerust geweten de overgeslagen stappen inhalen, om te eindigen bij valid html 4.01 en een valid css-stylesheet.
...het feit dat ik de oplossing van Rene snap, en van csshunter niet...
Ik zal proberen zo uitgebreid mogelijk te zijn om alles te raken.
NB: mijn pagina's heten "fontsize(x).htm", omdat daar de vraag van dit topic mee begon.

Stap 1: inline CSS
Eerst de verklaring van m'n oude oplossing van 5 februari 2010, 03:53 (developerscorner.nl/csshunter/fontsize2.htm).
  • DOCtype: al behandeld.
  • Html-code:
    <h1 style="text-align: center">Aan deze pagina wordt gewerkt.<br>
    Nog even geduld alstublieft.</h1>


  • De <h1> is een structuur-element, en geeft aan dat het de belangrijkste kopregel is die op de pagina staat (h=header). Voor de verdere indeling zijn er o.a. beschikbaar: <h2>, <h3> enz. voor andere koppen op de pagina; <p> voor een alinea (p=paragraph, Engels voor alinea); <div> voor een set bij elkaar behorende elementen (div=division, zeg maar sectie), enz.
  • In html worden de koppen <h1>, <h2> enz. automatisch vet afgebeeld.
  • In html krijgen de koppen <h1>, <h2> enz. automatisch een bepaalde lettergrootte (200% in verhouding tot de standaard 100% lettergroote van een gewone regel <p>, zie hier: developerscorner.nl/csshunter/kopformaat-h1.htm).
  • De <br> is de code voor een nieuwe regel (br=break, afbreken).
  • In html mogen stijlregels ingebed worden in de code van een element, mits met het attribuut style="...".
  • Dit wordt wel inline CSS genoemd.
  • De style="text-align: center" is de correcte manier om aan te geven dat de text van de <h1> gecentreerd moet worden weergegeven.
  • Onze <h1> kan desgewenst ook via deze methode een nog groter (of juist: kleiner) letterformaat krijgen. Er wordt dan een nieuwe style-eigenschap toegevoegd (gescheiden met een puntkomma).
  • Bv.: <h1 style="text-align: center; font-size: 3em">.
Stap 2: wordt vervolgd!
CSShunter

PS:
Een riedeltje aanbevelingen voor de aanbouw van fout-vrije html en css staat in de "Golden Rules of CSS": http://home.tiscali.nl/developerscorner/golden-rules-of-css.htm (met links naar meer van het goede).
 
Laatst bewerkt:
Ok, dus samengevat: Geen xhtml, maar html 4.01 strict.
Is daar een lijst van met functies?

Dit heb ik nu:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
Die checked foutloos.

Momenteel heb ik een EVALUATIE versie (nog 41 dagen) van Ultra Edit 32.
Wat is een goede editor? Waar een beginner makkelijk mee kan werken?
Hoeft niet perse gratis te zijn, maar niet de hoofdprijs :p

In de loop van de dag, komt er een banner in mijn handtekening, met de huidige page.
 
... html 4.01 strict.
Is daar een lijst van met functies?
Alles wat er moet, mag en niet mag in html 4.01, is hier te vinden. Maar een simpel lijstje is het niet... ;)
Wat is een goede editor? Waar een beginner makkelijk mee kan werken?
Ultra Edit 32 ken ik niet, dus weet niet of die de aanschafprijs waard is. - Met de gratis en goede Kompozer kan je waarschijnlijk aardig uit de voeten. Vooral als je je daarnaast verdiept in een paar html- en css-tutorials, want wat basiskennis is nooit weg. :)
Dit heb ik nu:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
Die checked foutloos.
Html 4.0 (van apr. 1998) is ingehaald door de verbeterde versie html 4.01 (van dec. 1999, ook niet zo jong): dat is de huidige standaard. Ik zou dus op z'n minst nemen:
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
Maar, als gezegd, de Strict variant is het beste.

CSShunter
 
Nu verder met:

Stap 2: CSS-stijlblok in de <head>
Als je alle stijlen van alle elementen volgens Stap 1 in de html zet, wordt het daar al gauw wat volletjes. Waarschijnlijk heel veel herhaling! En door de drukte in de tags al gauw compleet onoverzichtelijk!
Daar is iets op gevonden.
Alle styles kunnen in een "stijlblok" in de <head> van het document gezet worden. Dat gaat met:
HTML:
<head>
...
<style type="text/css">
   /* hier komen de stijl-declaraties */
</style>
</head>
Er zijn drie vormen:

Als je alle elementen van een bepaald type een bepaalde stijl wilt geven, dan neem je de naam van het element, bv.:
HTML:
<style type="text/css">
h1 {
   font-size: 2.2em;
   }
</style>
Nu krijgen alle <h1>'s op de pagina een lettergroote van 2.2em, d.w.z. 220% van de normale lettergrootte van een gewone regel <p>. Dat scheelt een hoop herhaal-code.

Als je sommige elementen een andere stijl wilt geven, dan kan je een "class" gebruiken. Dit wordt in de css aangegeven met de naam en een puntje ervoor:
HTML:
<style type="text/css">
.centreren {
   text-align: center;
   }
</style>
Nu worden alle elementen met in de html een class="centreren" op gecentreerd uitlijnen gezet. Dat kan ook voor verschillende elementen tegelijk gelden:
HTML:
<h2>Een gewone tussenkop</h2>
<p>Een gewone alinea.</p>
<h2 class="centreren">Een gecentreerde tussenkop</h2>
<p class="centreren">Een alinea met gecentreerde tekst.</p>
<h2 class="centreren">Nog een gecentreerde tussenkop</h2>
<p class="centreren"><img src="images/plaatje" width="200" height="100" alt=""><br>
Een gecentreerde afbeelding met gecentreerd onderschrift.</p>

Als je voor één element een speciale afwijkende stijl op het oog hebt, dan kan je dat element een persoonlijk ID meegeven. In de css met een # aangegeven:
HTML:
<style type="text/css">
#belangrijk {
   color: red;
   }
</style>
In de html wordt dit element dan met een ID i.p.v. een class aangeduid:
HTML:
<h2 id="belangrijk">Ik ben belangrijk rood</h2>

Op deze manier is dit voorbeeld opgebouwd.

Stap 3: wordt vervolgd!

Met vriendelijke groet,
CSShunter
 
En de laatste:

Stap 3: de css in een apart stylesheet
Als je alles volgens Stap 2 in een mooi stijlblok in de <head> van de pagina hebt gezet, staat de html van de pagina prima los van de vormgeving in het stijlblok. Maar bij een andere pagina moet je het stijlblok wéér in de <head> plakken. Dat levert niet alleen extra werk (en zware html-pagina's), maar is ook erg lastig als je ergens een verandering van stijl wilt doorvoeren. Dan moet je alle stijlblokken van alle pagina's langs!
Maar ook hier is iets op gevonden.
Alle styles worden in één bestand gezet, en dat bestand wordt door elke pagina van de site opgevraagd en gebruikt voor de vormgeving.

Dit gaat heel eenvoudig:
  • Knip alles van het stijlblok uit de <head> tussen: <style type="text/css"> en </style> er uit, en plak dit in een nieuw document.
  • Noem het nieuwe document bv.: mijnstijlen.css
  • De bestands-extensie is .css, maar eigenlijk is het een gewoon tekstbestand (en ook bv. met Kladblok aan te passen).
  • In de <head> van het document wordt nu dit stylesheet als volgt aangeroepen:
    <link rel="stylesheet" type="text/css" href="mijnstijlen.css">
  • Klaar!
Het is alleen even uitkijken als pagina's, images en stylesheets ondergebracht zijn in verschillende mappen.
Stel je hebt in de root-map ...:
  • index.htm
  • paginas-map
    • pagina1.htm
    • pagina2.htm
    • pagina3.htm
  • images-map
    • plaatje1.gif
    • plaatje2.gif
    • plaatje3.png
  • css-map
    • mijnstijlen.css
... dan moeten de verwijzingen van alle images in de mijnstijlen.css relatief worden t.o.v. de plek van de css-map. Dus in de css wordt het bv.:
Code:
[FONT="Courier New"][SIZE="2"]body {
   background: url(../images-map/mijnbackground.gif);
   }[/SIZE][/FONT]
... en de link naar het css-bestand moet ook relatief zijn:
  • vanuit index.htm: <link rel="stylesheet" type="text/css" href="css-map/mijnstijlen.css">
  • vanuit pagina1.htm: <link rel="stylesheet" type="text/css" href="../css-map/mijnstijlen.css">
... enz. Maar dit wijst zichzelf. - Of je gebruikt altijd absolute verwijzingen.

Dan is hier de voorbeeldpagina Stap 3 met extern stylesheet (de omgebouwde Stap 2 met het stijlblok in de <head>).
Zie de broncode: kort en krachtig!

Einde 3-traps raket!
"Stel je een eenvoudig vraagje, trekt ie een boekenkast omver!" ;)
Tja, en nu is dit maar het begin: er valt veel en veel meer over html en css te vertellen. :)
In elk geval, "u heeft helemaal geen kennis van codes nodig", wat een aantal webeditors (als programma, of online) beweren: daarmee is een beetje gecompliceerde website niet echt goed op te bouwen.
Zonder die kennis kan je niet handmatig iets invoeren, als dat nodig mocht zijn. En ook niet controleren of die programma's goede codes afleveren, en die zo nodig corrigeren (als het programma dat tenminste toestaat). Ook dat blijkt wel eens hard nodig. :D

Succes!
CSShunter
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan