Проблема с парящими спрайтами и js в IE6 (разрыв в один пиксель) - PullRequest
0 голосов
/ 21 ноября 2011

JS:

DD_belatedPNG js

HTML:

<script type="text/javascript" src="js/fixpng.js"></script>

<a href="#" class="sbToggle"></a>

CSS:

.sbToggle{
    background: url(/img/select-icons-trans.png) 0 0 no-repeat;
    display: block;
    height: 27px;
    outline: none;    
    width: 31px;
}
.sbToggle:hover{
    background: url(/img/select-icons-trans.png) 0 -27px no-repeat;
}

Приведенный выше код работает в IE6 + и FF.Но в IE6, когда моя мышь перемещается к элементу a, который вызывает событие .sbToggle: hover, фоновое изображение (background-position:0 -27px) имеет сдвиг на один пиксель (как элемент a с margin-top:-1px).

Полагаю, это связано с методом vmlOffsets DD_belatedPNG.js.У кого-нибудь есть такая же проблема?

============== обновлено ===============

iнашел описание об одном сдвиге пикселей) на сайте DD_belatedPNG

- the one pixel gap problem has been mostly solved. Few people noticed, 
but it bugged me, and was VERY hard to fix.[0.0.6a / 2008.12.14]

1 Ответ

0 голосов
/ 21 ноября 2011

Мне кажется, что если вы поддерживаете IE6, то у вас, вероятно, есть (или будет к тому времени, когда вы закончите) способ нацеливания на css только для IE6 (условные комментарии или некоторые другие средства).Если это так, то самое простое решение - использовать любые средства, которые вы используете для нацеливания на IE6, а затем просто изменить свой CSS для IE6 на:

.sbToggle:hover{
    background: url(/img/select-icons-trans.png) 1px -27px no-repeat;
}
...