Starší komentáře ke článku: Problém s uvozovkami kolem elementů Q a BLOCKQUOTE 1.
Zpět na článek | Úvodní stránka Interval.cz
Datum vložení: 26.8.2002 10:27:52
Obávám se, že zde došlo k určitému nedorozumění ohledně definice různých jazykových sad uvozovek. S argumentem, že webmaster má možnost nastavit si uvozovky podle svých představ a tudíž je požadavek nastavení pouze zbytečně náročný, si totiž nevystačíme. Nejlépe lze tento drobný omyl dokumentovat odkazem na HTML 4.01, konkrétně na definici atributu lang, který je použitelný u následujících elementů: "All elements but APPLET, BASE, BASEFONT, BR, FRAME, FRAMESET, IFRAME, PARAM, SCRIPT" a slouží mimo jiné k: "Helping a user agent choose a set of quotation marks".
Čili různé sady uvozovek v závislosti na jazyku budete nutně potřebovat, pokud například váš příklad se zmrzlinou v Gloucesteru obohatíte doplněním odstavce s norským překladem. V norštině, jak notoricky známo se quotuje: Q:lang(no) { quotes: "«" "»" "<" ">" }.
Datum vložení: 27.8.2002 22:00:45
Příliš nechápu, o jakém nedorozumění píšete. Vždyť sám ukazujete, jak je jednoduché pro autora stránky definovat uvozovky pro jazyky, které na stránkách používá -- je to logické, pokud používám nějaký jazyk, dá se předpokládat, že znám i jeho typografické konvence -- toto naopak podle mého nemůžeme požadovat po autorech prohlížečů, protože by na zjištění správných uvozovek pro různě jazyky museli vynaložit vcelku značné (a podle mě zbytečné) úsilí :-)
Datum vložení: 28.8.2002 12:37:35
Šlo mi o to, jak jste odsoudil možnost definice vice sad uvozovek pro různé jazyky, jako zbytečnou. Tak jsem uvedl příklad, kdy se bez ní neobejdete, totiž, že napíšete do jednoho dokumentu dva odstavce v různých jazycích. Čili pokud připravujete nějakou javascriptovou vychytanost pro doplňování uvozovek v MSIE doporučoval bych ji tam zahrnout.
Datum vložení: 29.8.2002 19:14:40
Asi jste si to špatně přečetl -- já jsem odsoudil definice vice sad uvozovek pro různé jazyky pouze v implicitních CSS, tedy těch, které jsou zakomponovány v prohlížečích -- právě proto, že si je každý autor může sám doplnit tak, jak jste to ukázal ve svém prvním příspěvku.
Do té JavaScriptové vychytanosti jsem to nezahrnoval, a to kvůli tomu, že jen minimum čtenářů píše stránky, na kterých používá dva jazyky (respektive citace ve dvou jazycích) najednou -- a pokud někdo takové stránky skutečně píše, nebude pro něj problém si funkci pro doplňování uvozovek upravit.
Datum vložení: 26.8.2002 11:46:19
Nevím, jestli je zrovna nejšťastnější zapisovat znaky jako české uvozovky do CSS přímo. Kódování CSS stylu je určeno z HTTP hlavičky (kterou většina autorů webů neovlivní), nebo z pravidla @charset (které prohlížeče povětšinou ignorují), nebo z obsahu atributu charset u <link> (což snižuje přenositelnost stylu, protože pro jeho správnou interpretaci je potřeba mít nějaké informace zvenčí).
Lepší je v CSS používat Unicode kódy, odpadá pak problém s nejednoznačností kódováná CSS souboru. Např.:
q { quotes: "\201E" "\201C" "\201A" "\2018"; }
Datum vložení: 27.8.2002 22:09:06
Děkuji za doplnění, všechno to člověka netrkne... :-)
Datum vložení: 8.9.2002 10:01:40
Sem vepište svůj příspěvek.
---> To taky udělám!
<a href='http://www.w3.org/TR/CSS21/syndata.html#x58' target='_blank'>http://www.w3.org/TR/CSS21/syndata.html#x58</a>
<I>When a style sheet resides in a separate file, user agents must observe the following priorities when determining a document's character encoding (from highest priority to lowest):</I>
<I>1. An HTTP "charset" parameter in a "Content-Type" field. </I>
<I>2. The @charset at-rule. </I>
<I>3. Mechanisms of the language of the referencing document (e.g., in HTML, the "charset" attribute of the LINK element). </I>
Myslím, že pak Kosek si to přeloží sám, pro ostatní:
Pokud jsou kaskádové styly uloženy v samostatném souboru, musí user-agent dodržet následující priority při určování znakové sady dokumentu (od nejvyšší po nejnižší prioritu):
1. Parametr "charset" v hlavičce HTTP "Content-Type".
2. @pravidlo @charset.
3. Mechanismus jazyka odkazujícího dokumentu (např. v HTML vlastnost "charset" prvku "LINK").
Takže není žádný důvod, proč při zachování priorit CSS nevyužít pro kaskádové styly vlastní znakovou sadu. Jen doplním, že Content-Type obvykle server odesílá bez určení znakové sady a udává ji až <meta http-equiv>, což může být problém, jelikož CSS nikde neříká, jaký vztah má tahle konstrukce HTML ke stylu (nejspíš žádný). Takže nejlépe je definovat znakovou sadu v odkazu na dokument nebo přímo v dokumentu:
@charset "ISO-8859-2";