Vraag & Antwoord

Webdesign (HTML, CSS, Flash)

Nogmaals doctype

8 antwoorden
  • Recentelijk [url=http://forum.computertotaal.nl/phpBB2/viewtopic.php?t=147893&highlight=]in dit topic[/url] een interessante discussie gevolgd waarin mede het onderwerp doctype ter sprake kwam. Inmiddels is een en ander me wel duidelijk. Alleen ben ik nu toch nieuwsgierig geworden naar de vraag hoe één en ander nu echt werkt. M.a.w. hoe een browser hier mee omgaat. Als ik het goed begrijp maakt de browser (welke dan ook) gebruik van verschillende databases om een html-pagina en bijbehorende stylesheets te interpreteren (parsing heet dat geloof ik). Per aangegeven html-versie cq. mode dus een andere vertaallijst, oftewel doctype declaration. Tot zover is het me duidelijk. Vragen: [list=1:8fc1edcc7d][*:8fc1edcc7d] Ik krijg min of meer de indruk dat een moderne browser deze databases allemaal aan boord heeft. Ik zie nl. in de sites die dit onderwerp behandelen b.v. dat het voor weergave in IE6.0 of FF en html-4.01 met Strict of Transitional niets uitmaakt of je de url vermeldt of niet. Of download hij toch per geval die aangegeven database/vertaallijst.[*:8fc1edcc7d]Een wat oudere browser zal dus niet zondermeer de nieuwste toevoegingen van html kunnen interpreteren. Mits ... ? Is het nu zo dat in die situatie tijdens de sessie de juiste database wordt gedownload vanaf de in de doctype declaratie vermelde url, zodat iedere bezoeker toch, zo goed en zo kwaad dat mogelijk is, de site kan bekijken zoals hij is bedoeld?[*:8fc1edcc7d] Dit zou dus het nut van een doctype met url illustreren, en dan begrijp ik ook het vereiste hiervan. In mijn boekje staat dat bij ontbreken van een correcte doctype declaratie de browser terugvalt op compatibility mode. Betekent dat terugvallen op html 2 (naar ik ergens las de eerste officiële versie)? En dus (soms) nauwelijks toonbaar? [*:8fc1edcc7d]Als de veronderstelling in punt 2 onjuist is, zou een webdesigner eigenlijk tot sint juttemis genoodzaakt blijven om rekening te houden met gebrekkige weergave van tags die b.v. pas in html-4 beschikbaar kwamen.[/list:o:8fc1edcc7d]Kortom: Hoe gaat een browser hier nu echt mee om? Edit: Kan ik het samenvattend het zo kunnen stellen, dat met die doctype mede wordt beoogd om als het ware een oudere browser tijdelijk op te waarderen tot de nieuwste? Althans, wat betreft het lezen van html. En dat dit zich niet beperkt tot pagina's die gebruik maken van stylesheets, maar voor elke html-pagina. Dus altijd met doctype beginnen. Jan de Boer
  • 1) Die database (de DTD bedoel je toch) gaat hij niet downloaden, deze is alleen maar om aan te geven voor de browser welke code hij aan het lezen is, dan hoeft hij niet te raden. Je kan dat DTD bestandje ook downloaden en aanpassen met je eigen tags, echter de dingen die je erbij maakt zal je browser niet begrijpen zoals: <koe luidheid="keihard">Mhoee</koe> ook als je deze in je eigen DTD zou zetten doet hij er niets mee (probeer maar eens) 2) Nee helaas dat werkt dus zoe niet zie 1. 3) Nee, de browser probeert er het beste van te maken, dus geen html2 (volgens mij was 3.2 de 1e "echte standaard". Echter door het niet volgens standaarden coden kunnen er verschillen onstaan over hoe de browser het gaat oplossen. In de strict modus, is het verschil het kleinst, in transitional mode geef je de browser wat meer "vrijheid"; "quirk" mode; als doctype en code niet met elkaar te lijken kloppen en bij geen doctype doet hij zelf maar wat. Dan kunnen de grootste verschillen onstaan. 4) In feite wel ja, in praktijk gebeurt dat lang niet altijd, en naar mijn visie hoeft dat ook niet. Je probeert voor een zo groot mogelijk publiek je site toegankelijk te houden, maar de echte oude browsers zijn te beperkt om een "mooie" site te maken, of je mist functionaliteiten. Zelfs de "grote jongens" houden zich niet aan alle standaarden : http://validator.w3.org/check?uri=http%3A%2F%2Fwww.google.nl%2Fsearch%3Fhl%3Dnl%26q%3Dhtml%2Bvalidate%26meta%3D Ik zelf probeer het zoveel mogelijk. Dus doctype is een aanwijzing voor de browser wat komen gaat, zoiets als letop de volgende taal is chinees :)
  • Om verwarring te voorkomen: met een doctype geef je niet aan welke menselijke taal volgt (zoals Chinees), maar welke (X)(HT)ML-versie volgt. (De verwarring kan ontstaan doordat in doctypes "EN" (Engels) staat aangegeven. Dit moet je niet veranderen; welke taal je ook gebruikt, er moet altijd "EN" in het doctype blijven staan.) In de praktijk gebruikt niemand meer browsers die geen HTML 4.01 aankunnen, dus je hoeft je niet druk te maken om oudere browsers die met lagere HTML-versies werken. Bouwen volgens HTML 4.01 is altijd goed, verschillen tussen browsers zijn niet zo groot meer als een paar jaar geleden, vooral niet als je ze in Standards mode laat werken. De grote verschillen tussen browsers zitten 'm nu niet in de HTML-elementen, maar in CSS-weergave.
  • Net terug van een mooie vakantie, en omdat mijn computer wel een paar weken zonder mij kon, liet deze reactie even op zich wachten. Bedankt voor de antwoorden. Samen met de reeds genoemde eerdere verkenningen is het me nu wel duidelijk. Jan de Boer
  • Eén en ander wordt ook duidelijk uitgelegd op [url=http://www.alistapart.com/stories/doctype/]A List Apart: Fix Your Site With the Right DOCTYPE[/url]. Het artikel is inmiddels al wat jaartjes oud, maar klopt voor zover ik weet nog altijd. Overigens wil ik nog even toevoegen dat je een groot deel van de oudere browsers kan opvangen door met een stricte DTD te werken en de opmaak te doen met CSS. Op deze manier zullen de oudere browsers de opmaak doen volgens de vaste regels zoals in de browser zelf zijn vastgelegd. Zorg dus wel voor een goede structurele opbouw van (X)HTML. - Bas
  • Bedankt voor deze aanvulling Bas. Ik was deze site al eens tegengekomen. De aanleiding van mijn vraag was zoals duidelijk mag zijn het vermelden van die url in de doctype-regel. Dat de juiste url er niet voor niets bij staat is inmiddels duidelijk. Wat me aanvankelijk niet duidelijk was, is wat precies met die url wordt gedaan. Kijkend in de dtd-file waar die url naar wijst , blijkt daar een hele waslijst te staan van commentaren (geflankeerd door <! > hoe diverse zaken moeten worden geïnterpreteerd. Uit het feit dat de juiste url (-strict, -transitional of -frameset) er toe doet leid ik af dat de browser per sessie die informatie ook leest (zoals hij dat ook doet met b.v. een externe stylesheet). Ik ben het adres van die site even kwijt, maar ik kwam al surfend een tip tegen om die dtd-file down te loaden en bepaalde regels ervan te bewerken, om vervolgens die bewerkte dtd-file in de doctyperegel te vermelden als url op een eigen site. Ik weet niet of zoiets gaat werken, evenmin of dit tot werkelijk nuttige zaken leidt.
  • Uit [url=http://www.alistapart.com/articles/customdtd/]A List Apart: Validating a custom DTD[/url]: [quote:debdba8c38]Neither your browser nor the W3C Validator goes out to the web to find the DTD — they have a “wired-in” list of the valid DOCTYPEs and use the URL for identification purposes only.[/quote:debdba8c38] Op A List Apart is ook [url=http://www.alistapart.com/articles/customdtds2]het vervolg van dat artikel[/url] te vinden, waarin wordt behandeld: [quote:debdba8c38]why making a custom DTD for the sole purpose of validation is a mistake, and in which cases it does make sense to create and use one.[/quote:debdba8c38]
  • Door even via Google zoeken met de hier gebruikte term "custom dtd" vond ik ook de site die ik bedoelde. Bedankt voor voor de tip. De bedoeld site was http://www.htmlhelp.com/tools/validator/customdtd.html Maar er zijn veel meer die dit onderwerp behandelen.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.