Autor Zpráva
jo2
Profil *
Nasledovný kód vyjadruje problém, treba si ho zobraziť v IE a v niekde inde pre pochopenie:

<html>
<head>
<title>untitled</title>
<style>
body {margin: 0px; padding:0px;}

.ull {margin:0px; padding: 0px;
width: 50%;
height: 20%;
}
.ull {background-color: #dddddd; border: solid black 1px;
display: block;
}
.ull li {display: block;padding: 0px; margin: 0px;list-style: none; width: 100px; float: left; background-color: #efefef;}

</style>

</head>
<body>

<ul class="ull">
<li style="margin-left: 40px; /*_margin-left: 20px*/">u IE je margin-left nie 40 ale 80px</li>
<li style="margin-left: 40px">hullu</li>
</ul>

</body>
</html>


Niesom si istý o čo vlastne ide, a tak sa viac menej pýtam, ako sa to prejaví u Vás a či ste sa stým už nestretli.
Oswald
Profil
To je klasický "IE double margin bug". Projeví se , když je nějaký prvek plovoucí a má nastavený okraj v tom směru, kam plave. Takže Ty u LI float left a margin-left 40 px = IE to vynásobí dvěma a je to 80 px. Jednoduché řešení je nastavit tomu prvku display: inline.
jo2
Profil *
vďaka za ujasnenie. Ohľadne toho riešenia - v použití sa vyžaduje display: block, ja som to riešil tak trochu inak (tvrdšie) -> _margin-left: 20px, čo je zas len využitie IE bug-u.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0