Autor | Zpráva | ||
---|---|---|---|
PavelR2112 Profil * |
#1 · Zasláno: 18. 8. 2012, 23:46:51
Ahoj,
pročítám si základy tvorby stránky zde na webu, ale zarazila mě jedna věc. Např. když chci vložit do stránky znak pro copyright, tak do zdrojového kódu napíšu ©. Zde na webu je uvedeno © (má ten středník nějaký význam, když to funguje i bez něj? Mám se radši naučit psát s tím středníkem nebo je to prašť jak uhoď). Další značky: <span style="color: red;"> - pak ve vysvětlení tagu je ale zápis bez středníku nebo <body style="background-color: green; color: yellow;"> Co tam ten středník dělá? Díky |
||
mickHouse Profil * |
#2 · Zasláno: 18. 8. 2012, 23:51:37
PavelR2112:
© se středníkem vždy, podobně jako pro pevnou mezeru. Jedná se o tzv. html entity, které se VŽDY píší se středníkem. Například pokud chcete napsat lomenou závorku < nebo > měl byste ji zapsat právě html entitou; Druhý uvedený příklad se týká již CSS syntaxe, v atributu style je hodnota, která odpovídá syntaxi CSS, v ní jsou jendotlivé příkazy odděleny středníkem. Jedná se o úplně odlišné problémy ;) |
||
Chamurappi Profil |
#3 · Zasláno: 19. 8. 2012, 04:07:59
Reaguji na mickaHouse:
„Jedná se o tzv. html entity, které se VŽDY píší se středníkem.“ Nemusí. Pokud za názvem entity následuje znak nedovolený v názvu entity (třeba mezera), entita skončila. Středník je u entit nepovinný a v mnoha případech bezpečně vynechatelný. Reaguji na PavlaR2112: Poslední středník v zápisu stylů je nepovinný. |
||
Joker Profil |
#4 · Zasláno: 19. 8. 2012, 09:15:22
ad Chamurappi, ovšem je vhodné ty informace vstřebat pořadí: Nejdřív se naučit, že tam středník být má, a potom kdy je možné ho vynechat.
|
||
PavelR2112 Profil * |
#5 · Zasláno: 19. 8. 2012, 18:06:28
OK, děkuju. Takže podle nějakého standardu by tam ten středník být měl, aby byl kód 100% validní. Jak u HTML entit, tak u zápisu CSS. Naučím se to tedy psát se středníkem.
|
||
panther Profil |
#6 · Zasláno: 19. 8. 2012, 18:31:13
PavelR2112:
„by tam ten středník být měl, aby byl kód 100% validní.“ teď si nejsem validitou jist u entit, ale poslední středník s validitou HTML/CSS nemá nic společného. Odhlížím od faktu, že celá validita jednoho či druhého ti k ničemu nepomůže. |
||
Chamurappi Profil |
#7 · Zasláno: 19. 8. 2012, 19:14:45
Reaguji na PavlaR2112:
„Takže podle nějakého standardu by tam ten středník být měl, aby byl kód 100% validní.“ Ne. Podle standardů je opravdu nepovinný. Takže když tam není (a je to ten případ, kdy jde vynechat), na validitě to vůbec nic nemění. |
||
Amunak Profil |
#8 · Zasláno: 19. 8. 2012, 20:09:28
PavelR2112:
Myslím, že pokud ti nevadí kód o pár bajtů delší, radši se to nauč psát vždy se středníkem. V budoucnu ti to může ušetřit problémy. V CSS to platí taky, ovšem když používáš inline zápis (čemuž je vhodné se v cca 90% vyhnout) a zapíšeš tam pouze jednu hodnotu, středník můžeš bezpečně vynechat. Na validitu se vykašli, přinejlepším ti částečně garantuje, že se tvůj kód všude zobrazí zhruba stejně (jakože něco není vyloženě rozbité). A když už jsi narazil na nepovinné zápisi, dovolím si upozornit tě na to, že některé html tagy jsou taky nepovinné - ve stránce třeba vůbec nemusíš mít značky jako <body>, <head>, <html> a podobné, a u takových věcí jako jsou třeba položky seznamů nemusíš mít ukončovací značku (</li>). U velmi dlouhých seznamů (typicky automaticky generovaných) se pak dá ušetřit datová velikost stránky. V následujícím kódu jsou označené středníky nepovinné. Všimni si, že ten první s těmi dalšími nemá nic společného (HTML entity vs CSS). abc def & ghi <span style=" font-size: 120%; color: darkred; "> text </span> <style> #element { font-size: 80%; color: maroon; } </style> Napadá někoho, proč je ta ukončovací značka style obarvená tak podivně? |
||
panther Profil |
#9 · Zasláno: 19. 8. 2012, 20:35:57
Amunak:
„přinejlepším ti částečně garantuje, že se tvůj kód všude zobrazí zhruba stejně“ na to právě validita vůbec vliv nemá a je to jedna z nejčastějších chyb v myšlení (nejen) začátečníků: validita != sprvné zobrazení. |
||
Amunak Profil |
panther:
Proto píšu „částečně“, „zhruba“ a „(jakože něco není vyloženě rozbité)“. Když máš kód validní, znamená to, že nemáš třeba někde překřížené tagy, neukončené značky a podobně. To jsou věci, se kterými se různé prohlížeče poperou různě, a web pak vypadá v základu všude stejně. Samozřejmě nemá cenu jít po stoprocentní validitě kódu za každou cenu, ale pokud ho máš validní (nebo víš co těch pár chyb způsobuje a nevadí ti to), na škodu to taky není. Nebo se pletu? |
||
panther Profil |
Amunak:
„že nemáš třeba někde překřížené tagy“ ..coz nemusi nutne znamenat, ze se stranka nezobrazi dobre. „To jsou věci, se kterými se různé prohlížeče poperou různě, a web pak vypadá v základu všude stejně.“ s tim nesouhlasim. Rozdily mezi zobrazenim v prohlizeci nevznika v dobre ci spatne napsanem HTML, ale vetsinou ve spatne napsanem CSS. Vetsinou. „ale pokud ho máš validní (nebo víš co těch pár chyb způsobuje a nevadí ti to), na škodu to taky není.“ nikdy jsem validitu nekontroloval, tak mi to asi nevadi :) Na skodu to neni, ale zaroven to nic neznamena. Rac se pokochat validnim webem (validnim alespon v drivejsich dobach, nekoukal jsem na to ted) a porovnej se spoustou nevalidnich (seznam.cz, ihned.cz, ...). Skutecne to, co je validni, je lepsi? |
||
Chamurappi Profil |
#12 · Zasláno: 20. 8. 2012, 12:58:50
Reaguji na panthera:
„Rac se pokochat validnim webem (validnim alespon v drivejsich dobach, nekoukal jsem na to ted)“ Není validní, nebyl validní a nikdy validní nebude. Proč pořád všichni šíří tuhle dezinterpretaci? Je tam <marquee> , překřížené elementy atd. — ta stránka demonstruje chybu oficiálního validátoru v rozpoznávání XHTML, nikoliv fakt, že i validní stránka může být otřesná.
Reaguji na Amunaka: „Když máš kód validní, znamená to, že nemáš třeba někde překřížené tagy, neukončené značky a podobně.“ Řada věcí, které na první pohled vypadají jako syntaktické chyby a nefungují spolehlivě, je v HTML 4 dovolená. Třeba neuvedení „ > “ na konci značky je často validní. Nebo vynechání názvu atributu a rovnítka — to spolehlivě funguje jen u atributů typu checked a jen s vynechanými uvozovkami kolem hodnoty. Všechny dovolené hrůzostrašné možnosti jsem kdysi ukazoval ve svém článku. Začátečník, který je schopný dělat chyby v překřížení značek, se může snadno trefit i do některé z těch podivností (už jsme tu pár takových měli).
„Napadá někoho, proč je ta ukončovací značka style obarvená tak podivně?“ Protože <style> přepne JUSH do CSS režimu a z něj se vyskočí až na konci </style> . Nějakou logiku to asi má, ale špatně pochopitelnou a nejspíš jediný, kdo to dokáže opravit, je Jakub Vrána :-)
|
||
panther Profil |
Chamurappi:
„ta stránka demonstruje chybu oficiálního validátoru v rozpoznávání XHTML“ ano, rada lidi k overeni validity pouziva oficialni validator. Zda je nebo neni validni pak uz nikdo neresi (resi, ale nevi, ze existuje podobna chyba validtoru) - temer kazdy, kdo na validitu chce dbat, se spokoji se zelenou fajfkou. A tu zde dostane, pro tuto cilovou skupinu je odkazany web validni. Ten muj prispevek smeroval spise k tomu, ze validni ci 'validni' (alespon dle oficialniho validatoru, ktery mnozi pouzivaji) stranka muze byt vselijaka, a vypovedni hodnota validity je (temer) nulova. |
||
Amunak Profil |
#14 · Zasláno: 20. 8. 2012, 16:53:00
panther:
„Skutecne to, co je validni, je lepsi?“ To jsem nikdy netvrdil. Chamurappi: Zajímavý článek. Překvapilo mě, co všechno je dovolené. Nechtělo by se ti o tom někdy trochu rozepsat, vzít v potaz třeba i HTML 5 a třeba připsat, kde co funguje a co ne, na co si třeba dát pozor? Používám třeba zmíněné atributy checked nebo disabled a nikdy mě nenapadlo, že to je vlastně zápis hodnoty. Byl jsem přesvědčen, že jde jen o zkrácený zápis checked=checked (resp. disabled=disabled). |
||
Časová prodleva: 12 let
|
0