[CSS] třídy vs identifikátory
Ahoj,
mohl by mi někdo polopaticky vysvětlit jaký je v CSS rozdíl mezi třídou (.foo) a indentifikátorem (#foo). Ať hledám na webu jak chci, nejsem z toho moudrej.
To že musím v HTML použít třídu jako class="foo" a identifikátor jako id="foo" chápu, ale nerozumím větě "takto pojmenovaný identifikátor na jedné straně nebudeme moci dále využít". Tzn. že smím mít jediný id="foo" na celé stránce ? Ale IE i Firefox mi dokazují, že je to nesmysl :confused:
Re: [CSS] třídy vs identifikátory
Ano. Identifikator by mel byt jedinecny na strance.
Identifikatory pouzivam pro design bloku stranky.
Tridy pak na casti, ktere se mohou opakovat.
Re: [CSS] třídy vs identifikátory
Takže to sice chápu správně, ale prohlížeče tuto vlastnost ignorují ?
Re: [CSS] třídy vs identifikátory
Jak se na to tvari validatory XHTML?
Prohlizec mi taky skousne id="548", ale validator zve, ze identifikator nemuze zacinat cislem.
Uz jsi videl prohlizec, ktery splnuje 100% standardy?
Re: [CSS] třídy vs identifikátory
Ono to sice funguje i kdyz je stejnych id vice, ale tyka se to akorat CSS. id se pouziva treba ve spojeni s javascriptem (getElementById) - jak se prohlizec zachova potom pri vice stejnych idckach? :)
Proto by se melo dodrzovat ID jednou. Stejne jako Prtik je pouzivam na oznaceni zakladnich stavebnich bloku stranky, tridy pak na formatovani textu nebo na opakujicic se casti stranky. Tridu muzes klidne pridat i k elementu s ID.
Re: [CSS] třídy vs identifikátory
Díky pánové, už je mi to jasnější. Chtěl jsem jenom vědět jestli sem to blbě pochopil já, nebo to prohlížeč zkousne kvůli BFU ;-)
U javascriptu to dává smysl, v čistým HTML mi pořád ucházel smysl takovéhoto omezení.
PS: Zajímavý je, že v některé literatuře k CSS se používají na VŠECHNY elementy na stránce jen třídy a v jiném zdroji zase jen identifikátory. Pak z toho nemám mít guláš :rolleyes:
Re: [CSS] třídy vs identifikátory
Validace na XHTML mi neprosla:
Error: ID "pokus" already defined
An "id" is a unique identifier. Each time this attribute is used in a document it must have a different value. If you are using this attribute as a hook for style sheets it may be more appropriate to use classes (which group elements) than id (which are used to identify exactly one element).
Re: [CSS] třídy vs identifikátory
Ještě je rozdíl v tom že identifikátor má vyšší prioritu než class a nižší prioritu než style...
Re: [CSS] třídy vs identifikátory
jen dodam, ze pomoci CSS lze definoval vlastnosti libovolnyho prvku i bez pouzivani trid a identifikatoru. V nekterych pripadech je to dokonce nejlepsi moznost, protoze to je naprosto obecny. Da se napr ric, ze link v tabulce ohraniceny divem v alespon 3ti urovni ma mit vlastnost X. Pokud pak web ma rozumnou strukturu (= ne tabulkovej design), nemusis furt koumat jestli toto ma mit tuhle nebo onuhle tridu.
Re: [CSS] třídy vs identifikátory
Jojo, to se da, ale pokud mas slozitejsi strukturu webu (stranky), asi se bez trid neobejdes.
Spousta veci by se dalo udelat jednoduseji, kdyby vsechny prohlizece fungovaly stejne a nebo IE dane vlastnosti vubec podporoval :D