Mitä eroa on xhtml:llä ja html5:llä. Mikä on XHTML? Virheet XHTML:ssä ja erot XHTML:n ja HTML:n välillä. Kaikki tunnisteet ja attribuutit on kirjoitettava pienillä kirjaimilla
Päivämäärä : 21.09.2008
Ei ei... Ero ei ole vain kirjainten määrässä. HTML on tavallinen asiakirjankuvauskieli Maailman laajuinen verkko HTML on myös SGML:n (Standard Generalized Markup Language) sovellus. XHTML puolestaan on XML:n pohjalta luotu laajennettava hypertekstikuvauskieli. Niiden tärkein ero on, että XHTML, toisin kuin HTML, käyttää XML-syntaksi. Toisin sanoen XHTML vaatii tiukempia syntaktisia merkintäsääntöjä kuin HTML.
XHTML:n etuna on, että XHTML-dokumentin jäsentäminen on helpompaa ja nopeampaa tiukkojen syntaksisääntöjen käytön ansiosta, XHTML-käsittely on mahdollista jopa matkapuhelimet vähillä resursseilla.
XHTML:n perussäännöt:1. Kaikki merkintäelementit (tunnisteet) on suljettava (esimerkiksi: ). Yksittäiset tunnisteet (esim
, ) on oltava "/" lopussa (esimerkiksi:
);
2. Elementtien (tunnisteiden) oikea sisäkkäisyys on huomioitava.
3. Elementtien ja määritteiden nimien on oltava pienillä kirjaimilla (esimerkiksi: sijasta ).
4. Symbolit “ ), mutta tunnisteen suunnittelua koskevat vaatimukset ovat paljon tiukemmat. XHTML-dokumentteja, jotka täyttävät syntaktiset vaatimukset, kutsutaan hyvin muotoilluiksi ja XHTML-dokumenteiksi, jotka täyttävät syntaktisten vaatimusten lisäksi myös asiakirjarakenteen suunnittelun vaatimukset.
DTD:ssä (Document Type Description) määritellyt tiedot – oikein (voimassa).
XHTML Markup Language | |
Myös tavalliset HTML-dokumentit voivat olla oikein - niille ei ole syntaktisia vaatimuksia. XML-säännöt, mutta niiden on noudatettava eri HTML-määritysten tyylivaatimuksia.
XHTML-dokumentteja voidaan käsitellä automaattisesti käyttämällä tavallisia XML-kirjastoja, kun taas useimmat HTML-toteutukset ovat melko lempeitä. jäsentimet, suunniteltu erityisesti HTML-käsittely. XHTML:ää voidaan pitää HTML:n ja XML:n leikkauspisteenä, koska se on sekoitus molempia kieliä.
Helpoin tapa osoittaa erot on näyttää HTML-dokumentti ja sitten sen XHTML-vastine. Katsotaanpa ensin oikeaa HTML-dokumentti 4.0:
Yksinkertainen HTML-dokumentti
Hei maailma!
Kuuleeko kukaan minua?
XHTML:ssä sama asiakirja näyttää tältä:
Yksinkertainen XHTML-dokumentti
Hei maailma!
Kuuleeko kukaan minua?
Mikä tässä on muuttunut?
1. Heti alussa näet uuden XML-ilmoituksen, joka tunnistaa asiakirjan XML 1.0:ksi käyttäen UTF-8-merkkikoodausta. Tämä ilmoitus voidaan jättää pois edellyttäen, että asiakirja käyttää UTF-8 (tai ASCII, joka on UTF-8:n osajoukko) koodausta.
2. DOCTYPE-ilmoitus on hieman muuttunut.
3. Nyt kaikki elementit HTML-merkintä kirjoitetaan pienillä kirjaimilla. Tämä on XTML-kielimäärityksen vaatimus.
4. html-elementti sisältää nyt xmlns-attribuutin (joka määrittää XHTML-nimiavaruuden, josta kerromme myöhemmin tässä luvussa) ja xml:lang-attribuutin, joka täydentää lang-attribuuttia XML-prosessoreille.
5. Merkitse
on nyt kirjoitettu nimellä
vinoviivalla (/) ennen sulkevaa kulmasulkua - mikä osoittaa sen tämä elementti on "tyhjä" eikä siinä ole vastaavaa lopputunnistetta.
6. Siellä on uusi sulkemistunniste
, täydentävä tunnisteJoka on asiakirjan rungon ensimmäisellä rivillä. XHTML ei salli tagien avaamista ilman vastaavia sulkevia tageja, ja tyhjien elementtien on seurattava merkintää
. Tämä asiakirja on liian lyhyt kattamaan useimmat vaatimukset, huomaa vain, että avaus- ja sulkemistunnisteiden on noudatettava symmetriaa, voit kirjoittaa esimerkiksi tämän: Tämä lihavoitu kursiivi, mutta tämä ei ole mahdollista: Tämä on lihavoitu kursivoitu– . Jos nämä vaatimukset täyttyvät, asiakirjat saavat selkeän ja ennustettavan rakenteen, ja ne tulevat saataville prosessoitavaksi ja muokattavaksi missä tahansa ohjelmassa.
On muutamia muita rajoituksia, joista puhumme myöhemmin, mutta tärkeimmät ovat tässä luetellut.
Miksi XHTMLXHTML-kuvauskielen loi World Laaja verkko Consortium (W3C) useista syistä, mukaan lukien seuraavat:
Web-sivun sisältöön ei pitäisi päästä vain osoitteesta tavalliset tietokoneet, mutta myös taskutietokoneista, Kännykät ja muut mobiililaitteet. Tiukempi syntaksi XML-kieli yksinkertaistaa sivun sisällön käsittelyä tällaisissa laitteissa;
Dynaamista HTML:ää (DHTML) ja muita komentosarjatekniikoita käyttävät kehittäjät ovat havainneet, että joustavuuden vuoksi HTML-rakenne Heidän hallinnoimansa HTML-dokumentit ovat joskus hieman erilaisia kuin odotettiin, ja joskus nämä erot vaihtelevat selaimesta toiseen. Tiukemmat XHTML-vaatimukset poistavat tällaiset epäselvyydet;
On olemassa kasvava määrä asiakirjanhallintatyökaluja, joilla on alkuperäinen XML-tuki, ja XHTML:n ja XML:n yhteensopivuus mahdollistaa näiden työkalujen toimimisen XHTML:n kanssa ilman kikkailuja.
Laajemmin XHTML auttaa luomaan tarkempia ja johdonmukaisempia asiakirjoja. Asiakirjan tarkistaminen XML:n tiukempien vaatimusten mukaisesti saattaa ensi silmäyksellä tuntua hankalalta, mutta se helpottaa virheiden löytämistä ja korjaamista.
XHTML- ja XML-nimiavaruudet | |
Vaikka XHTML ei ole vielä löytänyt laajaa tukea selaimissa, W3C toivoo, että siirtyminen XML:ään antaa kehittäjille mahdollisuuden luoda erikoissanastoja sekoittamalla niitä klassiseen sanakirjaan. HTML-sanakirja. W3C:n omiin suunnitelmiin kuuluu työskentely multimedian, grafiikan ja lomakkeiden parissa;
Lisäksi XHTML voidaan sekoittaa muiden XML-sanastojen kanssa, mikä helpottaa sanaston käyttöä uusissa yhteyksissä.
XML:n suosion kasvu on johtanut syiden ja periaatteiden uudelleen miettimiseen HTML:n avulla, Tekijä: vähintään, standardointielimissä. Vaikka monet selaimet tarjoavat jonkin verran tukea XML:lle ja XHTML:lle, on liian aikaista harkita näitä kieliä tarvittavat työkalut verkkokehitys. W3C hyväksyi ensimmäisen XHTML-version 26. tammikuuta 2000.
XML:n kauneus on siinä annettua kieltä vaatii selaimia lopettamaan asiakirjan käsittelyn, jos se sisältää muotoiluvirheitä. Tämä tarkoittaa, että päällä pienet laitteet XHTML-selain on helpompi ja nopeampi kuin sama HTML-selain. Se myös pakottaa kirjoittajat luomaan oikeampia ja johdonmukaisempia verkkodokumentteja. Vaikka tällaiset rajoitukset saattavat tuntua liian raskaalta, selaimien rohkaiseminen näyttämään virheilmoituksia virheellisen asiakirjan näyttämisen sijaan auttaa poistamaan ongelmia pakottamalla kirjoittajat korjaamaan virheensä.
Hyvät vanhanaikaiset HTML-asiantuntijat saattavat olla iloisia siitä, että W3C aloitti työskentelyn HTML-standardin parissa (jossakin määrin XHTML:stä riippumattomana) maaliskuussa 2007. Lisäinformaatio Tietoja tästä aiheesta on saatavilla osoitteesta http://www.w3.org/html/wg/.
XHTML- ja XML-nimiavaruudet
XML on uskomattoman monipuolinen. Hän antaa yleiset määritelmät syntaksi ja asiakirjan perusrakenteet, mutta se ei määrittele ominaisuuksia, kuten elementtien ja attribuuttien nimiä. Kuka tahansa voi luoda oman XML-sanakirja ilman tarvetta ottaa yhteyttä W3C:hen tai muihin standardointielimiin. Tämä lähestymistapa saa aikaan seuraava ongelma: Otsikko-elementillä voi olla täysin eri merkitys eri yhteyksissä. XML Namespaces Specification (löytyy osoitteesta: http://www.w3.org/TR/REC-xml-names/) tarjoaa mekanismin, jonka avulla kehittäjät voivat tunnistaa sanastoja yleisten tunnisteiden perusteella.
resurssit (Uniform Resource Identifiers, URI).
URI on yhdistelmä jo tunnetusta universaali osoitin resurssi (Uniform Resource Locator, URL) ja Uniform Resource Name (URN). Nimiavaruuksien suhteen
13.2. XHTML-ero HTML:stä
Suurin ero XHTML-dokumentin ja HTML 4.01:n välillä on tiukka vaatimus, että asiakirja on oikea XML-kielistandardien suhteen. Koko kehityshistorian ajan HTML-kieli kehitetty lähestymistapa, jossa sallittiin lukuisia vapauksia ja poikkeamia W3C:n julistamista kielistandardeista, ja selaimet eri valmistajia yritti kompensoida näitä vapauksia arvaamalla ja säätämällä HTML-koodia toistaakseen sen riittävästi. Kaikki tämä poistetaan XHTML:stä, jos noudatat tiukkoja XHTML DTD -joukkoja, ja siirtymävaiheen XHTML DTD -joukot palvelevat vain siirtymäaikaa vanhasta uuteen: HTML:stä XHTML:ään.
Attribuuttien arvojen on oltava lainausmerkeissä
Kielessä HTML-arvot attribuutit tulee lainata vain, jos arvo sisältää välilyöntejä tai Erikoissymbolit. Mutta tämä ei ole sallittua XHTML:ssä: kaikki arvot on suljettava lainausmerkeissä. Esimerkiksi tagissa
XHTML:ssä tätä pidetään kuitenkin virheenä. Se pitäisi kirjoittaa näin:
Vaikka tämä näyttää tarpeettomalta, tällaisen säännön noudattaminen on pakollista.
Suljettava tagi vaaditaan
HTML 4.01 -kielistandardi sallii sulkevan tagin jättämisen pois, jos vastaavaa dokumenttia käsittelevä ohjelma voi "arvata" sen olemassaolon. Siksi on täysin hyväksyttävää jättää pois sulkevat tunnisteet
vierekkäisten kappaleiden välissä taiTämä on ensimmäinen kappale
Tietenkin tällainen vaatimus sotkee koodia suuresti, mutta se poistaa kaikki epäselvyydet asiakirjan merkinnöistä, koska sen avulla voit tunnistaa tarkasti minkä tahansa koodielementin.
Sama koskee tyhjiä elementtejä. Jokaisella tällaisen elementin tagilla tulee olla sekä aloitus- että lopetustunniste, esimerkiksi rivinvaihtotunniste tulisi nyt kirjoittaa näin:
, muuten linja ei katkea. Onneksi tässä tapauksessa on mahdollista kirjoittaa
, eli ennen lopetuskulmasulkua tulee sijoittaa vinoviiva. Jos tunnisteella on attribuutteja, kulmapalkki kirjoitetaan esimerkiksi niiden jälkeen .
Elementit on asetettava sisäkkäin oikein
Tämä XHTML-standardin vaatimus ei eroa HTML:n vaatimuksista. Jokainen toiseen elementtiin sisäkkäinen elementti on suljettava lopputunnisteella, joka sijaitsee sisältävän elementin sisällä. Esimerkiksi tässä esimerkissä kursivoitua tekstiä määrittävä elementti sisältää lihavoitun tagin:
...muotoiltu teksti...
Tämä esimerkki on oikea. Mutta jos kirjoitamme näin:
...muotoiltu teksti...
silloin rikomme HTML-vaatimuksia. Kehittäjät eivät kuitenkaan aina täyttäneet näitä ja vastaavia vaatimuksia, ja "hyvät" selaimet yleensä korjasivat tällaiset koodirikkomukset. XHTML-standardi kuitenkin kieltää tällaiset rikkomukset. Lisäksi XHTML kieltää seuraavat liitteet:
Tunniste ei voi sisältää ;
Tunniste ei voi sisältää tunnisteita , , , , , , , , ;
Tag ei voi sisältää toista tunnistetta ;
Tunniste ei voi sisältää muita tunnisteita;
Tunniste Ei voi sisältää tunnisteita , , , , , .
Tässä tapauksessa investoinnin syvyydellä ei ole väliä. Sanotaan vaikka tagissa muut tunnisteet ovat sisäkkäisiä, ne eivät voi sisältää tunnistetta . Selain, joka tukee tiukasti XHTML:ää, ei pysty hahmontamaan riittävästi tällaisia rikkomuksia sisältäviä asiakirjoja.
Tunnisteiden ja attribuuttien nimien määrityksessä kirjainkoolla on merkitystä
HTML-dokumenteissa tagien ja attribuuttien nimet eivät erota kirjainkoosta, joten esimerkiksi kirjoittaminen