Inkább jobb lenne, ha mindenki igyekezne hack-ek nélkül megvalósítani a terveket. Eddigi tapasztalatom szerint maximum IE6-7 esetén kellett egyszer egyszer kisebb módosításokat eszközölni csak, hogy valami ugyanúgy nézzen ki. Arra meg ott van az underscore hack (_property: value;), ami IE6-ban működik, és pl. !property: value; ami IE6-7 érvényes.
Igyekszem én is távol tartani magam a hackeléstől amennyire lehet; a blogmark oka, hogy pl. a cégnél elkezdték forszírozni a Chrome támogatását, és ez a böngésző bizony még nem teljesen azt nyújtja CSS terén, ami elvárható lenne.
Egy megjegyzés. Ha nincs php, akkor JavaScripttel is van lehetőség egy extra class beszúrására a DOM-ba, a legtöbb JS framework már tud ilyet.
a cégnél elkezdték forszírozni a Chrome támogatását, és ez a böngésző bizony még nem teljesen azt nyújtja CSS terén, ami elvárható lenne.
Szerintem teljesen jó a CSS támogatás a Chromeban, ami működik Firefoxban, az 99% hogy jól fog kinézni Chrome-ban is. És minden más WebKit motoros böngészőben (pl. Safari)
Lehet, hogy szerinted jó, és az is lehet, hogy 99%-ban tényleg jó, ám a hackek éppen erről a minimális, azonban rendkívül idegesítő %-ról szólnak. Több designer/fejlesztő is panaszkodott egyébként, hogy - többek közt - a CSS nincs rendben a Chrome-nál, és ajánlgatják az új, bétaállapotú letöltését.
A floatolt listaelemek ie 6+ és ff alatt is tökéletesen megjelennek egymás alatt, chrome-ban egymás fölött(!) magyarul 30 menüpontból csak az utolsó látszott :-)
ez a "floatolt listaelemek" elég tág, tudsz mutatni konkrét példát? újabban chrome-ban is tesztelek, sőt most egy munkánál külön kérés volt, hogy chrome-ban is minden közel pixelpontos legyen és én nem nagyon találtam ilyen hibát.
szegacam.hu
Termékek(click)->Egyéb húskészítmények(click)
jobb oldalt kijön a menüsor, mely ie6+ és firefoxban egymás alatt jeleníti meg a menüpontokat, chrome-ban legutóbb mikor néztem egymásra pakolja őket.
Nem tagadom optimalizálni jócskán lehetne, de gyorsan kellett csinálni :-). Majd ráérő időmben megpróbálok ajaxos megoldást hogy vajon gyorsabb -e.
Érdekes megnézni firefox alatt is, ugyanis ha a jobb oldali menüsort a csúszkával húzzuk, akkor valamiért nálam (ubuntu+ff3) vibrál a felette levő kép. Ie alatt nem. A menüsor absolute pozicionált, a weboldal többi része floatolt (de ennek lehet köze a dologhoz?). Ugyanígy történik ha egy adott termékre kattintva a középen megjelenő leírást csúszkáztatjuk.
Visszatérve a "bugra", ha a 382. sorban lévő width-et kiütöm, a jelenség megszűnik (ez az alatt/fölött megfogalmazás enyhén zavaró volt, mert nem tetted hozzá, hogy az alattat függőlegesen értetted, a fölöttet meg mélységben). Ha viszont ezt az értéked átrakod az a-ban lévő span elemre, akkor megjavul.
ol#navigacios_menu a span, div#fel_nyil a, div#le_nyil a {
font-family:"Times New Roman", Times, serif;
font-size:12px;
cursor:pointer;
color:black;
background-color:#fbeece;
font-weight:bold;
border:1px solid black;
padding:2px;
display:block;
width:150px;
}
ol#navigacios_menu {
overflow-x: hidden;
}
sajnos nem értem rá (és nem is értek annyira hozzá) hogy így tesztelgessem, ki is fogom javítani mihelyst odajutok. Az a baj, ha csak a fentebb javasoltakat megcsinálom, tényleg nem villódzik, viszont elvesztem a customSroll() általam írt gyönyörű (:-)) plugin hatását, ami egységes scrollbart készít böngészőtől függetlenül. Ezt biztos lehet orvosolni, és mihelyst időm lesz rá meg is fogom tenni. Addig chrome támogatás ugrik :-)
Viszont ez akkor sem magyarázza meg, hogy szeretett böngészőinkben miért nem jön elő eme "bugnak kinéző de nem bug" és a chrome miért viselkedik így. Arról nem is beszélve hogy a megrendelő ie6 (!) alatt nézi.
Mindenesetre köszi a megoldást, és hogy foglalkoztatok vele!
Üdv:
Gábor
szerkesztve:
ps: emlékszem már, miért kellett az owerfow:auto. Ugye, ha valamit a divbe rakok, és scrollt akarok írni hozzá, akkor tudnom kell a tényleges méretét az után, hogy a tartalmat beletöltöttem. Tehát a divnek arra a méretre kell nőnie, amennyit a tartalom elfoglal, így tudom kiszámolni, mennyit scrollozzak rajta ahhoz, hogy változó tartalmaknál is megfelelő legyen a csúszka nagysága és a scrollozott elem pozíciója.
Ha erre valakinek jobb ötlete van, örömmel várom.
Tény, hogy egy egyéni szkrollhoz tudni kell minden méretet, a konténerét és a tartalmáét is. De ennek mi köze az overflow:auto-hoz? Az overflow:auto natív sávot jelenít meg, ha a tartalom mérete nagyobb, mint a konténer. Következésképp neked semmiképpen nem kellhet ez, és mindenképpen az overflow:hidden kell. Én, miután a változtatásokat megcsinálom, minden normálisan működik, egyéni szkrollbárral. Milyen hatást vesztesz el?
Egyébként a villódzásról lerí, hogy bug, hiszen látszik, hogy motorprobléma, ilyen viselkedést elvileg nem is kéne tudni előidézni.
A width-es dologra csak azt mondanám, hogy valószínű, de önmagában ebből a jelenségből ezt még nem lehet biztosra kimondani, meg azt sem, hogy ha hiba, js- vagy css-hiba-e. Teszt után ki lehet mondani.
Teljesen igazad van, tökéletesen működik. Tudatlanságomban azt hittem, hogy csak levágja a tartalom alját és fix marad a méret. De nem!
Köszönöm!
Gábor.
<div id="kulso">
<div id="belso">
<h5>Tartalom</h5>
<p>Mindenféle van itt</p>
</div>
</div>
Ugye a kulso azonosítóval rendelkező div overflow:hidden-nek kell hogy legyen, ez egyértelmű, valamint egy fix height -el kell rendelkeznie, amiben fog mozogni a belso id-jű div. Viszont a belso div -nek ilyen szempontból teljesen mindegy hogy hidden vagy auto overflow tulajdonságot állítok be (mindazonáltal jobb a hidden, hisz az valóban megszünteti a fent említett villódzást) mivel a height nem fix, így mindkét esetben a div mérete nő és nem jelenik meg scrollbar. Vagy rosszul látom a dolgot?
Így van, ha nincs height, akkor az overflow hatástalan. És igen, összekevertem a belső meg a külső divet. Szóval a külsőn (relative_nav_div) eddig is hidden overflow volt, természetesen, és ez rendben is van. A belso szkrollozott tartalom (relative_nav_inner) overflow-ja okozta a villódzást. És ugye azt elég kiütni, nem kell se hidden, se auto.
Innentől egyébként már van egy megfogható tesztjelöltünk: ha egy overflow:hidden konténerben egy overflow:auto elem helyzete megváltozik, az villódzni fog. Ezt már érdemes tesztelni, de persze valószínűleg még mindig egyszerűbb metódus a szájtodat lecsupaszítani.
Egy hack nélküli világ...
Hát ez alapanyag és
Egy másik elegáns módszer lehet a CSS hackek elkerülésére, ha a html elemnek adsz böngészőazonosító osztályt.
Hack free
Egy megjegyzés. Ha nincs php, akkor JavaScripttel is van lehetőség egy extra class beszúrására a DOM-ba, a legtöbb JS framework már tud ilyet.
Chrome
Szerintem teljesen jó a CSS támogatás a Chromeban, ami működik Firefoxban, az 99% hogy jól fog kinézni Chrome-ban is. És minden más WebKit motoros böngészőben (pl. Safari)
Szerinted
+1 css bugs
konkrét példa?
Sajtok
Termékek(click)->Egyéb húskészítmények(click)
jobb oldalt kijön a menüsor, mely ie6+ és firefoxban egymás alatt jeleníti meg a menüpontokat, chrome-ban legutóbb mikor néztem egymásra pakolja őket.
Nem tagadom optimalizálni jócskán lehetne, de gyorsan kellett csinálni :-). Majd ráérő időmben megpróbálok ajaxos megoldást hogy vajon gyorsabb -e.
Érdekes megnézni firefox alatt is, ugyanis ha a jobb oldali menüsort a csúszkával húzzuk, akkor valamiért nálam (ubuntu+ff3) vibrál a felette levő kép. Ie alatt nem. A menüsor absolute pozicionált, a weboldal többi része floatolt (de ennek lehet köze a dologhoz?). Ugyanígy történik ha egy adott termékre kattintva a középen megjelenő leírást csúszkáztatjuk.
Ugyanaz
A 6-os hsz. nem egy egzakt
A villódzás megszűnik, ha ezt a szabályt kiütöm:
Köszönöm szépen
Viszont ez akkor sem magyarázza meg, hogy szeretett böngészőinkben miért nem jön elő eme "bugnak kinéző de nem bug" és a chrome miért viselkedik így. Arról nem is beszélve hogy a megrendelő ie6 (!) alatt nézi.
Mindenesetre köszi a megoldást, és hogy foglalkoztatok vele!
Üdv:
Gábor
szerkesztve:
ps: emlékszem már, miért kellett az owerfow:auto. Ugye, ha valamit a divbe rakok, és scrollt akarok írni hozzá, akkor tudnom kell a tényleges méretét az után, hogy a tartalmat beletöltöttem. Tehát a divnek arra a méretre kell nőnie, amennyit a tartalom elfoglal, így tudom kiszámolni, mennyit scrollozzak rajta ahhoz, hogy változó tartalmaknál is megfelelő legyen a csúszka nagysága és a scrollozott elem pozíciója.
Ha erre valakinek jobb ötlete van, örömmel várom.
Tény, hogy egy egyéni
Egyébként a villódzásról lerí, hogy bug, hiszen látszik, hogy motorprobléma, ilyen viselkedést elvileg nem is kéne tudni előidézni.
A width-es dologra csak azt mondanám, hogy valószínű, de önmagában ebből a jelenségből ezt még nem lehet biztosra kimondani, meg azt sem, hogy ha hiba, js- vagy css-hiba-e. Teszt után ki lehet mondani.
overflow:hidden
Köszönöm!
Gábor.
Tudatlanságomban azt hittem,
Akkor most már ösztönből...
Így van, ha nincs height,
Innentől egyébként már van egy megfogható tesztjelöltünk: ha egy overflow:hidden konténerben egy overflow:auto elem helyzete megváltozik, az villódzni fog. Ezt már érdemes tesztelni, de persze valószínűleg még mindig egyszerűbb metódus a szájtodat lecsupaszítani.
Majd még foglalkozom vele, mert érdekes.
Köszi most már nekem is