Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Merkistöongelma?

Hakoulinen [25.07.2008 00:18:29]

#

Sivustoni vasempaan ylälaitaan tulostuvat merkit . Mistähän tämä mahtaa johtua? Tuliketun generoimassa lähdekoodissa ei näy noita merkkejä.

Sivu alkaa seuraavalla lailla:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fi">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen,projection" />

</head>

oipat [25.07.2008 00:36:43]

#

Ootko kokeillu käyttää UTF-8 merkistökoodausta?

Hakoulinen [25.07.2008 00:53:14]

#

Vaihtamalla sen charsetin arvoksi? Olen.

Lebe80 [25.07.2008 11:57:09]

#

Entä millä merkistöllä tuo sivu on tehty?

Merri [25.07.2008 12:10:44]

#

Lienet tallentanut UTF-8:lla niin että sivun alkuun on tallentunut UTF-8:n Byte-order Mark, joka on kolme merkkiä pitkä. Sitä ei saa olla HTML-sivulla, se on tarkoitettu enemmänkin tavallisia tekstitiedostoja varten.

Hyvästä ohjelmasta pitäisi löytyä mahdollisuus olla tallentamatta BOMia, tosin sitä saatetaan kutsua milloin miksikin. Esimerkiksi SciTe kutsuu sitä UTF-8 Cookieksi.


Noin muuten, älä käytä XHTML 1.1:htä, se pitäisi aina tarjoilla application/xhtml+xml:nä. Ongelma vain että IE kun ei sitä ymmärrä, niin et voi tarjoilla. Tuskin tarvitset/käytät tällä hetkellä mitään XHTML 1.1:n ominaisuuksia, jotta tarvitsisit sitä. Käytä mieluummin XHTML 1.0 Strictiä. Sen saa tarjoilla myös text/html:nä, vaikka suositellumpaa sillekin olisi tarjoilla application/xhtml+xml:nä. (XHTML5 tulee selkeyttämään tätä, sillä ei ole DOCTYPEä ollenkaan ja ainoastaan palvelimen tarjoilema tiedostomuoto päättää sen, että sivu on XHTML5:ttä).

Chiman [25.07.2008 12:37:31]

#

Merri jo kertoikin olennaisen; se on byte-order mark -merkkiyhdistelmä. Kyseiset merkit eivät (yleensä) näy editointinäkymässä, mutta ne voi bongata tiedostosta esim. heksaeditorilla.

Jos et käytä sivun charsettinä utf-8:a, ei tiedostoakaan ole tarvetta tallentaa siinä muodossa.

Lisätietoa englanniksi: http://en.wikipedia.org/wiki/Byte_Order_Mark

Metabolix [25.07.2008 12:41:28]

#

On tosiaan outoa tallentaa ja lähettää tiedosto UTF-8-muodossa ja ilmoittaa meta-tagissa merkistöksi iso-8859-1. Tämä kannattaa kyllä korjata, ettei selaimille satu väärinkäsityksiä.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta