Autor Zpráva
kirisek95@gmail.com
Profil
Zdravím lidi, dělám web strejdovi (učím se na něm a snažím se o optimalizaci pro nejpoužívanější prohlížeče) a responzivní design pro mobily (tam vůbec netuším [teda tuším, ale vůbec nevím,jak to rozložit a tak])

Teď k věci... na webu www.ii.unas.cz je bezproblémové zobrazení v chrome, Firefox, Opera, IE 9 jsem optimalizoval pomocí podmíněného komentáře "<!--[if IE]>odkaz na css pro IE<![endif]-->

Problém je, že IE 8 a nižší ani neví, že tam nějaká podmínka je... ono ani neví, že tam je nějaké css
<link rel='stylesheet' href='/styl.css' type='text/css' media="screen and (min-device-width: 851px)"> 
<link rel="stylesheet" href="/mobile.css" type='text/css' media="screen and (max-device-width: 851px)">
<!--[if IE ]>
<link rel='stylesheet' href='/stylie.css' type='text/css' media="screen and (min-device-width: 851px)"> 
<![endif]-->

Jinak IE10 to zobrazuje děsně, ale podmíněný komentář, jak jsem se dočetl, pro něj nelze použít...

Tak se tedy ptám... jak jinak určitým prohlížečům přiřadit styly tak, aby fungovaly. Napadlo mě použít JS, protože umí rozpoznávat prohlížeče, ale v JS se vůbec nevyznám (sice bych základy programování už měl chápat, ale vůbec mě to nebaví a v té škole to nějak vždycky obejdu a logicky sepíšu). PHP nevím, jestli něco takového umí, budu rád za info a pomoc.

web pak půjde na jinou doménu, abyste se nedivili, že jsou tam nesmyslný texty a tak ;) To si pak strejda dopíše css pro všechny style pro všechny prohlížeče a tady je styl pro IE, ten se snažím nějak experimentovat, třeba tam je něco špatně a proto ho IE nechce
margin
Profil *
Jdeš na to špatně, měl bys začít tím, že použiješ doctype pro standardní režim, předpokládám, že k použitá doctype pro quirk režim nemáš důvod.

Netuším, jak se starší verze IE staví k Media Queries pravidlům, můžeš si ověřit pokusy, nebo zjistit třeba na stránkách http://caniuse.com/.
Str4wberry
Profil
Starší Explorery tam plete ta podmínka pro určitou šířku media="screen and (max-device-width: 851px)". Proto se to většinou dělá tak, že jeden CSS soubor se načítá vždy a ten další (který ve starších prohlížečích nemusí fungovat) jen mění jeho hodnoty. (Nebo naopak tzv. mobile-first, kdy všechna zařízení schopná CSS dostanou nějaký základní styl a ten pokročilejší styl použijí jen zařízení schopná daného zápisu. Což na jednu stranu zjednoduší optimalisaci, ale zase sníží uživatelský zážitek v dnešní době často nemalé skupině uživatelů.)

Ideální by ale bylo se pokusit napsat stránku tak, aby fungovala dobře ve všech prohlížečích i bez <!--[if IE ]> hacků. Většinou je to možné.
kirisek95@gmail.com
Profil
Jojo, díky... :))) no Tak jsem udělal ten základní CSS a jen dodělávám pro IE, díky :)) no a ty DOCTYPE jsem moc nepobral, zkusím to ještě nějak pročíst a zkusit pochopit :)) bez toho media screenu to je cajk :))

EDIT: kdyžtak prosím jaký tedy mám použít DOCTYPE... nejsem schopnej to pochopit, chápu, že definuje v jaké HTML je vytvořený... chápu i to, že jsou 2 módy, ale nechápu, jak zapíšu ten pro standartní režim

mam tento
<!DOCTYPE HTML PUBLIC "-//W3C/DTD HTML 4.1 Draft//CZ">

díky moc¨:))

if IE hack tam je hlavně kvůli pozadí, protože neumí CSS plynulý přechod... a ještě rád vypisuje písmenka větší, než opravdu jsou :(
Str4wberry
Profil
Kolega margin se nejspíš (podle mě mylně) domníval, že použitý <!doctype>:
<!DOCTYPE HTML PUBLIC "-//W3C/DTD HTML 4.1 Draft//CZ">

Způsobuje zpětně kompatibilní (tzv. quirk) režim prohlížeče, který způsobuje různé změny v zobrazení mezi Internet Explorerem a Firefoxem.
margin
Profil *
Str4wberry:
Kolega margin se nejspíš (podle mě mylně) domníval
Je to tak, jak píšeš, z prstu vycucaný neobvyklý doctype mě zmátl, nyní jsem si zobrazovací režim ověřil bookmarkletem a skutečně je IE ve standardním režimu.
kirisek95@gmail.com
Profil
jo už to chápu (asi) quirk je prostě soubor bez !DOCTYPE a všechno ostatní (s !DOCTYPE) je podstatě normální :)) No jak jsem se dočetl, tak QUIRK mode má o stupeň větší písmo, což mi v podstatě dělá IE... :D nu nic, jdu kutit, sestřenka si tam vymyslela formuláře, tak se jdu učit, jak je někam poslat :))

Vaše odpověď

Mohlo by se hodit

Nezapomeňte na odkaz na živou ukázku problému.

Prosím používejte diakritiku a interpunkci.

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