2008 Június 20, 2008
Ha valaha készült (vagy hogy 1) egy függőleges menü segítségével listaelemek (li) címkék és a CSS, akkor szembesülhet, ez egy újabb hiba az Internet Explorerben, ahol IE 6 betétek eltéréseinek lista elemeit tartalmazó blokk szintű elemeket, vagyis ha van szóköz között a lista elemeit a jelölést. Kösz, de kösz, az IE 7-es verzió úgy tűnik, ez a hiba mentes.
Ha, mint én, és még sok más, Ön ebbe a csapat csalódott fejlesztők, akik még, hogy az új elrendezést, az IE6 is dolgozik, akkor ez hasznosnak bizonyulhat. Vessen egy pillantást ...
Minta jelölés:
<ul id="menu">
<li> <a href="#"> Kezdőlap </ a> </ li>
<li> <a href="#"> ról </ a> </ li>
<li> <a href="#"> Szolgáltatások </ a> </ li>
<li> <a href="#"> Portfolió </ a> </ li>
<li> <a href="#"> GYIK </ a> </ li>
<li> <a href="#"> Kapcsolat </ a> </ li>
</ Ul>
Lehet, hogy hozzon létre egy CSS, hasonló, mint alább, hogy a fenti jelölés transfrom egy vertikális menüt ....
Minta CSS ...
# Menu {
margin: 0; padding: 0; background: # FF9900;
list-style-type: none; szélesség: 150px;
}
# Menu li {margin: 0; padding: 0;}
# Menu a {display: block;
color: # 555555;
text-decoration: none;
padding: 0 15px;
line-height: 2,5; border-bottom: 1px solid # FFF;
}
Az eredmények azt fogja látni ...
Megoldás ezt a hibát ... (módosított / hozzáadott CSS félkövér dőlt)
# Menu {
margin: 0; padding: 0; background: # FF9900; list-style-type: none; szélesség: 150px;
float: left; / * ez lebegett a lista elemeit tartalmazza * /
}
# Menu li {
margin: 0; padding: 0;
float: left; / * Ez a javítás a * /
szélesség: 100%; / * whitespace bug az IE6 * /
}
# Menu a {
display: block; color: # 555555;
text-decoration: none;
padding: 0 15px;
line-height: 2,5; border-bottom: 1px solid # FFF;
}
Ha a fenti megoldás doesnot működne (ismert okok miatt csak IE6) ... próbáld inkább ezt a módszert
Csak add ezt a kiegészítő csak IE6 stílust a jelölések ...
<! - [If lt IE 7>
<style type="text/css">
# Menu li a {display: inline-block;}
# Menu li a {display: block;}
</ Style>
<! [Endif] ->
nincs hozzászólás | tags: IE Bugs , IE javítások , IE Hacks , IE kérdések , IE6 , Tutorials | Posted in Browser Quirks , CSS
2008 Június 6., 2008
Tovább a DOM elemek az oldalon, annál lassabban teszi, lassabb a DOM hozzáférést JavaScript. A nagyszámú DOM elemek oka lehet rossz kiadványtervezés. Például a beágyazott táblázatok volna célokra használt elrendezést. Használja minden HTML tag hol van értelme szemantikailag. Pl DONOT használatra asztalok elrendezése, de DONOT habozzon használni őket, ahol még a táblázatos adatok megjelenítésére, és így csökkenteni fogja használni DOM elemeket, ezzel szemben egy hasonló szerkezet segítségével létrehozott DIVs csak ..
Teszteléséhez számának DOM elemet a HTML oldal, csak írja be a következőt a Firebug konzol: document.getElementsByTagName('*').length
Nincs szigorúan rögzített, hogy hány DOM elemek túl sok. Ellenőrizze más hasonló oldalakon, hogy a jó markup.Eg. Yahoo! Honlap egy elég forgalmas oldalra, és még 700 elemet (HTML).
nincs hozzászólás | tags: Best Practices , DOM | Posted in Best Practices , User Interface desgin
2008 Június 2., 2008
Használja kap az AJAX kérések
Megállapítást nyert, hogy amikor a XMLHttpRequest, POST hajtják végre a böngészők, mint egy két lépésből áll: 1. küld a fejlécet, akkor az adatok küldése. Tehát legjobb, ha a GET, ami csak úgy egy TCP csomagot küldeni (hacsak nincs egy csomó cookie-k). A maximális URL hossza IE 2K, így ha küld több adatot, mint a 2K előfordulhat, hogy nem tudja használni a GET.
Egy érdekes hatással van ez a beosztás, anélkül, hogy bármilyen adat kiküldetés viselkedik, mint a GET. GET jelent letöltésére vonatkozó információkat, így van értelme (szemantikailag), hogy használhatja a GET, ha éppen csak adatokat kértek be, szemben az küldő adat tárolható a szerver oldali.
Kerülje a szinkron AJAX kéri
Ha így "Ajax" kérések, akkor választhatja aszinkron vagy szinkron módban. Aszinkron módban fut a kérést a háttérben, míg más böngésző tevékenységek továbbra is feldolgozni. Szinkron mód várja a kérést, hogy visszatérjen a folytatás előtt.
Benyújtott kérelmek szinkron módban kell kerülni. Ezek a kérések hatására a böngésző lefagyását, amíg a felhasználó kérésére visszatér. Azokban az esetekben, ahol a szerver foglalt, és a válasz eltart egy ideig, a felhasználó böngészőjének (és talán OS) nem engedi, hogy mást kell tenni. Azokban az esetekben, amikor a megfelelő válasz nem érkezett, a böngésző továbbra is blokkolja, amíg a kérelmet határidőn belül.
Ha úgy gondolja, hogy a helyzet megkívánja sync módban, akkor nagy valószínűséggel az ideje, hogy újragondolják a design. Nagyon kevés (ha van ilyen) helyzetekben valóban szükség Ajax kéréseit szinkron módban.
1 hozzászólás | tags: AJAX , Best Practices | írt AJAX , Best Practices , User Interface desgin