Autor Zpráva
ng9
Profil
Nechtěl jsem psát OT do diskuse, kde jsem nakousl hvězdičkový reset. Reaguji na Chamurappiho, který mne odkázal na tento článek, který dle mého již trochu zestárl. Mluvím z vlastní zkušenosti, takže žádná teorie a pro vás jsem to i odzkoušel...

použil jsem následující kod, pro demonstraci stačí:

<!DOCTYPE HTML>
<html>
	<body>
		<form method="post" action="">
			<input type="text"> text<br>
			<input type="submit"> text<br>
			<input type="checkbox"> text<br>
			<input type="radio"> text<br>
			<select>
				<option>test</option>
			</select> test<br>
		</form>
	</body>
</html>


testováno pod windows 7 home 64bit:
Opera 11.52: zdá se vše ok
Chrome 15.0.874.121 m: u checkboxu a radio buttonu je to zřejmě o 1px posunuto níž
FF8: to samé jako chrome
IE9: to samé jako chrome a tedy i ff

Dále s použitím hvězdičkového resetu:

	* {
		padding:0px;
		margin:0px;
	}


Výsledky...

Totožné jako bez resetu, krom samozřejmě odsazení a vnitřního paddingu. (řádky jsou rozhozeny tak jako tak). Takže tento reset nemá vliv na rozbíjení řádků.

Samozřejmě jak bylo psáno v odkazovaném článku, border formulářové prvky resetuje, o něm se ovšem nebavím. A nepoužívat tento reset protože pak nejsou odsazené odrážky a jiné prvky je nelogické. Vždyť přeci proto píšeme css, abychom si tyto prvky nastylovali jak potřebujeme a ne aby si prohlížeče vykreslovaly prvky s nějakými rozestupy a pak hacky jednotlivé browsery ladili. Takže vždy vím, že všechny prvky mají nulové marginy a paddingy a hodnoty nastavím přesně těm prvkům u kterých to potřebuji.
Str4wberry
Profil
Ony se používají i starší Explorery než 9, víme?
ng9
Profil
Str4wberry:
To samozřejmě vím. Nevím přesně jestli stejně se to vykreslí v ie8 i v ie7, ale předpokládám, že ano (kdyžtak mne opravte). Pokud se bavíme pouze o ie6 tak ho dnes používá přibližně jen 1 % (podle vlastních statistik z google analytics).
Plaváček
Profil
ng9:

Objevuješ Ameriku, ale skončil jsi v Indii. Hvězdičkový reset je dávno překonaná záležitost a kromě toho za vykreslování formulářových prvků je často zodpovědný operační systém, nikoliv prohlížeč. Tento článek http://www.456bereastreet.com/archive/200701/styling_form_controls_with_css_revisited/ je sice staršího data, ale nic podstatného se od té doby nezměnilo. Prohlédni si dobře, jak konkrétní formulářové prvky vypadají napříč operačními systémy a prohlížeči. Jako dobrý CSS reset se mi osvědčil tento od Erica Meyera http://meyerweb.com/eric/tools/css/reset/ (ale existují i jiné). Nicméně - pořád zůstává otázka, zda má smysl CSS reset používat. Zejména poslední dobu získávám pocit, že se jedná o činnost dost kontraproduktivní.
Petr ZZZ
Profil
ng9:
podle vlastních statistik...

IE6 už asi opravdu moc lidí nemá, nicméně na vypuzovací chybu měření je dobré myslet – komu se tvoje stránky rozpadnou, ten už se pravděpodobně nevrátí. Tento mechanismus zkresluje každou statistiku zastoupení prohlížečů, která pracuje se stránkami, jež se v nějakých prohlížečích rozpadají.
Chamurappi
Profil
Reaguji na ng9:
vždy vím, že všechny prvky mají nulové marginy a paddingy
Pokud podle tvého povrchního testu nemá vynulování marginů a paddingů na <input>y žádný vliv, proč je nuluješ i jim?

vždy vím, že všechny prvky mají nulové marginy a paddingy a hodnoty nastavím přesně těm prvkům u kterých to potřebuji
Zapamatovat si, které elementy mívají výchozí marginy a paddingy, není zase tak těžké. Stejně už si musíš pamatovat ostatní výchozí CSS vlastnosti.
Vynulováním všeho téměř nikdy nedosáhneš optimálního vzhledu, blokovým elementům se marginy skoro vždy hodí a řádkové je ve výchozím stavu nemívají. Většinu toho, co vynuluješ, stejně pak musíš nastavit jinak — a to, co nastavit zapomeneš, se na výsledku podepíše negativně, protože výchozí rozestupy jsou lepší než žádné.

Nevím přesně jestli stejně se to vykreslí v ie8 i v ie7
Mně se nechce vyrábět pokusnou stránku. Předkládáš tvrzení — dodej živou ukázku, nechť se každý přesvědčí sám.
Na systémové vykreslení formulářových prvků má mimochodem někdy vliv i jazyk operačního systému.
ng9
Profil
Petr ZZZ:
díky za zdroj, zajímavý postřeh.

Chamurappi:
zřejmě prostě každý máme jen jiné návyky a každému přijde lepší něco jiného. Ale tvrdit, že hvězdičkový reset nepoužívat protože rozbíjí formuláře mi přijde zavádějící.

Stále se učím a rád si poslechnu zkušenější názory.
shaggy
Profil
ng9:
Ja tiež zastávam názor, že je jednoduchšie vynulovať defaultný margin, padding atď., ako používať reset (to je niečo ako CSS grid systémy, slúži to menej zdatným koderom).
Ak už nutne potrebuješ použiť CSS resete, existujú aj také, ktoré ti formulár nerozbijú. Nad tými si neuvažoval?
Chamurappi
Profil
Reaguji na ng9:
každý máme jen jiné návyky a každému přijde lepší něco jiného
Návyky můžou být škodlivé a subjektivní pocity sem nepatří, bavíme se o selektoru, ne o uměleckém díle a cíle máme stejné.

tvrdit, že hvězdičkový reset nepoužívat protože rozbíjí formuláře mi přijde zavádějící
Zavádějící? V jakém smyslu? Výhody hvězdičkového resetu (v porovnání s ostatními resety) snad výrazně převyšují nad touto nevýhodou? Nebo máme předstírat, že rozbití formulářů neexistuje?

Jedinou jeho potenciální výhodou může být, že ho jde umístit ve stylopisu kamkoliv, nemusí být na začátku, protože všechny ostatní selektory jsou specifičtější, takže ho přebijí nezávisle na pořadí. Ale to si stejně skoro nikdo neuvědomuje. Ono je to asi i dobře, že ho lidi dávají na začátek.

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:

0