Autor Zpráva
xlifer
Profil
Jsou oba zápisy správně? Pokud ano, tak jaký je doporučený používat?

zápis 1

#sirka {
width: 100px;
}

zápis 2

DIV#sirka {
width: 100px;
}

Následně použití v HTML kódu:

<div id="sirka">
...
</div>
Str4wberry
Profil
Z pohledu výkonu je trochu lepší první způsob – prohlížeč nemusí řešit, jestli sedí i jméno značky.

Druhý styl zápisu zase může být čitelnější – je na první pohled jasné, že se jedná o <div>.

Kromě toho má druhý zápis vyšší prioritu (ukázka).
xlifer
Profil
Str4wberry:
Kromě toho má druhý zápis vyšší prioritu (ukázka).
Co to znamená v praxi? Z ukázky jsem to nějak nepochopil.
Str4wberry
Profil
Že pozdější umístění pravidla příslušné vlastnosti nepřebije, protože je selektor #sirka méně konkrétní než div#sirka.
xlifer
Profil
Str4wberry:
Že pozdější umístění pravidla příslušné vlastnosti nepřebije, protože je selektor #sirka méně konkrétní než div#sirka.
A osobně používáte nebo by jste doporučil jaký zápis?
preca2
Profil *
Já osobně používám co nejkratší zápis: pokud v budoucnosti místo divu použiju span, nebo třeba tabulku, nemusím upravovat i CSS; ušetřim si pár ťuknutí klávesnice a navíc je to i o nepatrnej kousek rychlejší.
Bubák
Profil
Já bych použil #sirka, protože je to o 3 znaky kratší, než div#sirka, díky tomu ušetřím při psaní pár milisekund. Pokud bych výjimečně potřeboval zápis s o jeden bod vyšší prioritou, tak bych ho použil.
Doporučuji používat to, co je pro tebe přehlednější.
jenikkozak
Profil
xlifer:
Postupuji od obecnějších selektorů ke konkrétnějším.
Konkrétnější zápis div#sirka bych použil v případě, že bych:
1) chtěl rozlišit mezi prvky <div> a třeba <table> s id sirka,
2) potřeboval bych prvku přidat hodnotu, kterou bych nechtěl následujícím zápisem přebít,
3) chtěl bych si ve stylopisu naznačit, o jakou zápalku vlastně jde, abych se při pozdějších úpravách nemusel dívat na strukturu HTML dokumentu.
xlifer
Profil
Díky za názory a doporučení, ja myslím, že je to zcela vyčerpávající...
jefitto44
Profil
Rozdiel je ten, že #sirka platí pre všetky elementy s id sirka a div#sirka platí iba pre div, ktorý má id="sirka"

čiže ak bude mať <div id="sirka"><img src="..." id="sirka"></div>, tak zápis #sirka sa bude vzťahovať aj na obrázok.
Ak budeš mať div#sirka, tak obrázku sa to týkať nebude
Str4wberry
Profil
Až na to, že „<div id="sirka"><img src="..." id="sirka"></div>“ není moc vhodné používat. ID by mělo být na stránce jen jednou.

Předejde se tak:

1) Problému při vybírání prvku v JS metodou getElementById (vrátí jen první výskyt).
2) Při odkazování na #kotvu (taktéž odkáže na první výskyt).


Jinak osobně ID pro stylování prakticky vůbec nepoužívám. Pokud je možné si navrhnout HTML kód, tak si člověk vystačí s třídami a identifikátory si může vyhradit jen pro odkazování na kotvy, případně JavaScript.
jefitto44
Profil
To je pravda, ID je od teho, aby bolo jedinečné na stránke... do mysql tiež nenapcháme dva riadky s rovnakým primary key...
jenikkozak
Profil
jefitto44:
do mysql tiež nenapcháme dva riadky s rovnakým primary key
Srovnáváš dvě naprosto rozdílné záležitosti. Id v HTML má z pohledu CSS podobné použití jako třída. (I když rozhodně nikomu nedoporučuji, aby v rámci jedné stránky používal stejný identifikátor.) Do databáze nelze záznamy se stejným primárním klíčem vložit už z principu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: