Autor Zpráva
Hawk
Profil
Zdravím, nebudu to moc rozpitvávat, ale nechtěl sem se vzdát elegantního a čistého řešení hoveru u divů a nalezl jsem článek, který rádí používat doctype ve tvaru strict. Vůbec nevim co to znamená, ale po této změně funguje zápis :hover v CSS i pro divy pod IE!

Snad to pomůže i ostatním nešťastlivcům, mezi které jsem donedávna patřil i já... :-)

S pozdravem Jakub Dražan

www.bernzilla.com/item.php?id=762

Moderátor Joker: Za větu se nikdy nedává víc než jeden vykřičník anebo otazník a nedělá se před ním mezera
Hawk
Profil
změna, nejen u typu strict, ale i transitional

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
Miloš
Profil
Transitional, pokud uvedeš URL.

Stejně ale budeš muset použít něco na způsob hover.htc pro IE 6.
habendorf
Profil
Co je to za výkřik, že si zaslouží 3 vykřičníky?
Moderátor Joker: Nezaslouží, už je to změněné
Miloš
Profil
Asi se mu porouchala klávesnice a zasekává se mu vykřičník. Měl by si koupit novou ;-)
Hawk
Profil
Tak sorry pánové, že sem chtěl pomoct. Hlavně, že tu všude řešíte, jak ten hover udělat pro IE jedině pomocí Javy. Škoda, že to nejde smazat, vyprd bych se na vás. ;-)
Miloš
Profil
1) Tady někdo mluví o Javě? Nevšiml jsem si. Mimochodem – ono jde takto Javou ovlivňovat chování prohlížeče na běžné stránce? O tom bych rád něco věděl. :-D
2) Mimochodem – jak uděláš čistě pomocí CSS hover pro IE 6? Nebo jsi takový bouchač, že na něj prdíš?
J
Profil *
http://diskuse.jakpsatweb.cz/?action=vthread&forum=7&topic=101296#2
- viz Bubákova poznámka o neškodné deklaraci.
Chamurappi
Profil
Reaguji na J:
Nesouvisí s vykreslovacími režimy a zde je řeč o :hoveru u <div>ů (neobalených odkazem). Alespoň předpokládám.


Reaguji na Hawka:
Občas se najde nějaký začátečník, který nečetl JPW a je pro něj existence vykreslovacích režimů překvapením, ale většina radilů tady moc dobře ví, že sedmička i osmička (ve standardním režimu) podporují :hover na všech elementech. Skripty se povolávají na pomoc u šestky.

nechtěl sem se vzdát elegantního a čistého řešení hoveru u divů
Na <div> se :hover moc často nedává. Ono to pak lidem připomíná odkaz a mají chuť na to klikat.
Joker
Profil
J:
viz Bubákova poznámka o neškodné deklaraci.
Pozor, to se ale týká a:hover, který v IE6 funguje. Problém je cokolivjiného:hover.

Hawk:
Tak sorry pánové, že sem chtěl pomoct. Hlavně, že tu všude řešíte, jak ten hover udělat pro IE jedině pomocí Javy.
Kde se tu řešilo, jak udělat :hover pomocí Javy?

Jinak nic ve zlém, ale skoro u všech článků o IE7 v době jeho příchodu se omílalo, že bude konečně fungovat :hover nejen na odkazech. A i ve zdejších diskusích se obvykle zmiňuje problém s IE6, ne IE7 nebo IE8.

A u IE6 tohle nic nevyřeší.
Hawk
Profil
Podle vašich reakcí soudě, že sem objevil ameriku, ale po 2 hodinách alá hokus/pokus (díky chybné deklaraci doctypu) a následného googlení, sem se všude dočetl, že prostě IE hover na elementech nepodporuje a ni ve verzi 7 a 8 a řešení je pouze v eventech (díky mému nastavení stránky tomu i vše nasvědčovalo) a ani tady na fóru jsem nedohledal jiný názor

btw - o vykreslovacích režimech samozřejmě vím, ale pokud sám Microsoft tvrdí, že "Internet Explorer 7 and later, in standards-compliant mode (strict !DOCTYPE), can apply the :hover pseudo-class to any element, not merely links." tak sem neviděl důvod zkoušet dál

2 Chamurappi> aby div s hoverem nevypadal jako odkaz, lze snad řešit pomocí definice cursoru ne?
2 Miloš> ne ovlivňování stránky Javou, ale simulací :hover Javou
2 Joker> Omlouvám se, nenarážel sem přímo na zdejší fórum a komunitu, ale na většině blogů, kde se toto řešilo bylo pro IE řešení vždy pomocí Javy, případně behavioru, který je také skriptovaný

btw - omlouvám se moderátorovi za tu rozhrkanou formu příspěvku na začátku. Je vidět, že tady dodržujete nějaká pravidla narozdíl od jiných fór, asi sem trochu zvlčel :-)
Miloš
Profil
Hawk:
Blbost – v životě jsem neviděl, aby se :hover simuloval Javou. Kde jsi k té informaci přišel? Měl bys nějakou praktickou ukázku?
panther
Profil
Hawk:
aby div s hoverem nevypadal jako odkaz, lze snad řešit pomocí definice cursoru ne?
když na stránce při najetí myši cokoliv mění svůj vzhled, je to uživatelem vnímáno jako to, na co lze klinout. Tyto efekty jsou tedy nežádoucí.

ne ovlivňování stránky Javou, ale simulací :hover Javou
nepochopil jsi, co chtěl Miloš říci. Java není totéž, co JavaScript. Zde je použit JavaScript, Java ne.
Miloš
Profil
panther:
Java není totéž, co JavaScript.
Zkazil jsi mi radost; já ho v tom chtěl ještě chvilku koupat :-D
Hawk
Profil
O.k. o.k. už mlčim :-), každopádně už sem se chystal psát, že si asi nerozumíme :-). Takže Javascript, změny při událostech jako onmouseover atd. - tuším, že na JPW to bylo v článku o DHTML, jestli tomu tak taky lze říkat?
panther
Profil
Miloš:
Zkazil jsi mi radost; já ho v tom chtěl ještě chvilku koupat :-D
nebuď zlý :-) Kdyby se mi objevilo, že přišel nový příspěvek, než jsem to odeslal, umazal bych to. Editovat jsem to nechtěl.

Taky byly doby, kdy jsi všechno nevěděl a byl jsi rád, když ti někdo poradil.

Hawk:
ale snad třeba tohle [...] neni úplně špatný
co to má společného s tématem?
Miloš
Profil
Hawk:
tohle www.hledani-priver.cz neni úplně špatný
Je to hodně špatné, protože to hraje. Po prvním zvuku jsem to zavřel, takže jsem to neviděl; a už to nikdy neuvidím.

Takže Javascript, změny při událostech jako onmouseover atd.
Řešení je pochopitelně víc. Jak jsem psal výše – [#3] – používá se v IE6 k simulaci :hover-efektu také javascriptové udělátko s názvem hover.htc – simuluje neexistující pseudotřídu :hover třídou .hover – člověk pak vůbec nemusí javascriptu rozumět – jen daný HTC přilinkuje a zbytek je CSS.
Chamurappi
Profil
Reaguji na Hawka:
pokud sám Microsoft tvrdí, že "Internet Explorer 7 and later, in standards-compliant mode (strict !DOCTYPE), can apply the :hover pseudo-class to any element, not merely links." tak sem neviděl důvod zkoušet dál
Když Microsoft tvrdí, že to funguje, tak jsi neviděl důvod to dál zkoušet?

aby div s hoverem nevypadal jako odkaz, lze snad řešit pomocí definice cursoru ne?
Co se mění při najetí, to je nejspíš odkaz — tak uvažuje velká část návštěvníků. Na kurzor moc nekoukají. (Dokonce běžní brouzdalové neklikají ani na obrázky, pokud jediné, co indikuje odkaz, je změna kurzoru.)

a ani tady na fóru jsem nedohledal jiný názor
Párkrát se tu objevil někdo, kdo naříkal, že mu nefunguje :hover v sedmičce či osmičce, ale vždy dostal správné vysvětlení.

tuším, že na JPW to bylo v článku o DHTML
Pochybuji, že bys našel na JPW napsáno, že v Exploreru 7 nefunguje :hover.
Hawk
Profil
2 Chamurappi>
ad1) neviděl jsem důvod zkoušet dál jiný režim, než !strict, když Microsoft tvrdí, ve v tomto režimu :hover pro IE funguje
ad2) souhlas
ad3) nedohledal jsem
ad4) nic takového sem nenapsal, napsal jsem, zda je možné tyto údalosti nazývat jako DHTML
Joker
Profil
Hawk:
po 2 hodinách alá hokus/pokus (díky chybné deklaraci doctypu) a následného googlení, sem se všude dočetl, že prostě IE hover na elementech nepodporuje a ni ve verzi 7 a 8 a řešení je pouze v eventech
Njn, já zkusil hodit do Googlu ie7 hover a hned první výsledek popisuje přesně to, co tohle vlákno (akorát je tři roky starý). V prvních pěti se tomu věnují ještě další dva (s odkazem na ten první), velice přímý popis je na stackoverflow:
IE7 won't allow you to apply :hover pseudo-classes to non-anchor elements unless you explicitly specify a doctype. Just add a doctype declaration to your page and it should work perfectly.
Překlad:
IE7 nepoužije pseudotřídu :hover na jiné prvky než kotvy, pokud explicitně neudáte doctype. Jednoduše přidejte na stránku deklaraci doctype a mělo by to fungovat perfektně.

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