Přejít k navigační liště

Zdroják » Zprávičky » Deset entitových hříchů HTML kodérů

Deset entitových hříchů HTML kodérů

Zprávičky Různé

Nálepky:

Entity v HTML nabízejí mnoho možností vložení znaků, a je škoda je nevyužít. Na nejčastější situace, kdy by se měla objevit entita, ale kodér místo toho použije nějakou opisnou konstrukci, ukazuje článek 10 Entity Crimes You Really Shouldn’t Commit. A jaké že to jsou zločiny? Například psaní copyrightu jako ( C ), znaku trademark pomocí <sup>TM</sup>, trojtečky (výpustky) pomocí tří teček, nesprávné použití mdash a ndash (resp. jejich nahrazování spojovníkem „-“) atd.

Komentáře

Odebírat
Upozornit na
guest
15 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře
Jakub Vrána

Já za hřích považuji použití jiných entit než &lt;, &amp; a případně ještě &quot; uvnitř hodnot atributů. Přimhouřím oko ještě nad &gt;, ale se vším ostatním jsou akorát problémy při exportu do XML. Používání entit pro znaky bez speciálního významu je samoúčelné, pokud je znaková sada podporuje přímo. A vytvářením stránek v čemkoliv jiném než v Unicode si člověk akorát zadělává na problémy.

Opravdový odborník :-)

„Používání entit pro znaky bez speciálního významu je samoúčelné, pokud je znaková sada podporuje přímo.“

+1

prakticky všechno dnes píšeme v UTF-8 a používání (HTML) entit ztrácí smysl — je hloupost opisovat znak pomocí &blabla; když ho můžu napsat rovnou v daném kódování. Diakritiku taky přece nepíšeme stylem: &#268;e&#353;tina

Opravdový odborník :-)

Hodně těch znaků na klávesnici je a ty zvývající můžou být… Nebo se o ně má postarat editor či redakční systém – viz třeba ta konverze (c) na ©. Každopádně zapisovat znaky formou entit do dokumentu, jehož kódování umožňuje přímý zápis těch znaků, je zvěrstvo.

Byť se to někdy používá – stejně tak jsem jednou vidět PHP/MySQL „aplikaci“, která si nerozuměla s češtinou, a tak se do databáze všechny české znaky ukládany jako &#XXX; No tak, fungovalo to, ale žádná krása to nebyla…

Jakub Vrána

Navíc motivace pro entity je zdá se jiná: A given character encoding may not be able to express all characters of the document character set (HTML specifikace).

Ukládání do databáze by fungovalo jen do té doby, dokud bychom se nepokusili uložit delší řetězec do sloupce typu varchar.

Opravdový odborník :-)

Ještě abych odpověděl na otázku:

© je Alt+Shift+C, ® Alt+Shift+R, to je standardní QWERTZ. Pomlčku píši Alt+- to už standard není, ale není problém si to nastavit, pokusím se zařídit, aby to bylo ve základu v distribucích, trojtečku … mám Alt+Shift+- atd. Nedělitelná mezera je Alt+mezera, to je ve standardním rozložení – na to pozor ve skriptech…

Opravdový odborník :-)

No vidíte, mně zase před dvaceti lety na třiosmšestce s DOSem nešla psát písmena s háčky a čárkami. Asi to bude chtít nějaký modernější nástroj. Co se týče standardního a nestandardního rozhložení, tak jsem psal, co standard je a co jsem si doplňoval (ale není to žádná věda, na to ani nemusíte být opravdový odborník).

Opravdový odborník :-)

Tak ono to tehdy šlo třeba v T602 nebo ve Windows 3.1 po nainstalování zvláštního počešťujícího upgradu, ale v základu to v tom systému nebylo. Ale máte pravdu, nechme toho. Nedoukové s Windows asi holt vždycky budou používat polovičatá řešení, tak jim ty entity nechme :-)

Joelp

Nedoukům s Linuxem to taky nefunguje :P

Jirka

tak jak bylo popsáno to funguje v Mac OS (aktuálně tedy OS X)

jezovec

to vam udelal redakcni system, ne? Takhle je to prece spravne… Nemelo tam byt neco jako „(“ c „)“ ?

Mirek

Mně na entitách vždycky dost vadilo, že jinak vypadají než se píšou. Zkuste si v prohlížeči přes ctrl+f vyhledávat něco z textu: …na noze a–b™. Nenajdete tři tečky, tm, a-b, podle prohlížeče možná ani „na noze“. Přitom jasně vidíte, že tu jsou. Někdy to komplikuje i copy&paste.

Entity chápu pro tisk, líp vypadají, ale ne pro web, komplikují jeho použití. Pokud se nepletu, tak to snad neplatí pro uvozovky a ampersandy, ty jsou pro vyhledávání i kopírování bez problému i pro verzi v entitách.

Stav SIMD v Rustu v roce 2025

Různé
Komentáře: 1
SIMD - neboli Single Instruction, Multiple Data - znamená, že procesor může jednou instrukcí zpracovat více datových prvků najednou. Typicky to znamená, že místo sčítání dvou čísel přičtete dvě sady čísel paralelně. To může přinést výrazné zrychlení například při zpracování obrazu, audia nebo numerických výpočtů. Pokud již SIMD znáte, tato tabulka je vše, co budete potřebovat. A pokud s SIMD teprve začínáte, tabulku pochopíte do konce tohoto článku

GPUI Component: moderní Rust GUI komponenty pro cross-platform desktop aplikace

Různé
Komentáře: 0
GPUI Component je open-source Rust knihovna rozšiřující framework GPUI o více než 60 moderních, nativních a multiplatformních UI komponent. Staví na deklarativním přístupu, stateless renderování a jednoduchém API inspirovaném Reactem či Yew. Díky optimalizovanému výkonu, podpoře témat a flexibilním layoutům umožňuje rychlý vývoj desktopových aplikací, jako je například trading nástroj Longbridge Pro. Knihovna je licencována pod Apache 2.0 a dostupná na GitHubu.