Jump to content
  • 0

Проблема c IE: смена класса у элемента


a3.work
 Share

Question

Добрый день.

Имеется следующая вёрстка и css:


<style>
.menu_line { display:inline; padding: 3px 5px;}
.menu_line a.sign, .menu_line a.sign:active, .menu_line a.sign:link, .menu_line a.sign:hover, .menu_line a.sign:visited {text-decoration:none}
.menu_line a.txt, .menu_line a.sign:active, .menu_line a.txt:link, .menu_line a.txt:hover, .menu_line a.txt:visited {font-size:12px; color:#555555; text-decoration:none}
.menu_line span {display:none}
.checked {background:#FF7800;}
.open span, .close span {display:inline; background-position:0px 1px; background-repeat:no-repeat;}
.open span {background-image:url('img/cross_gray.jpg')}
.close span {background-image:url('img/minus_gray.jpg')}
.checked.open span {background-image:url('img/cross_orange.jpg')}
.checked.close span {background-image:url('img/minus_orange.jpg')}
.checked a.txt, .checked a.sign:active, .checked a.txt:link, .checked a.txt:hover, .checked a.txt:visited {color:#FFF;}

</style>

<div class="menu_line checked close">
<a href="" class="sign"><span>   </span></a>
<a href="" class="txt">надпись</a>
</div>

<div class="menu_line checked close">
<a href="" class="sign"><span>   </span></a>
<a href="" class="txt">надпись</a>
</div>

Задача:

Сделать элемент древовидной структуры, похожей на аналогичный из "проводника" виндов, отличающийся от названного наличием 2-х "параметров состояния": цвета фона надписи и маркера слева от надписи (плюс или минус, выполнены изображениями). Проблема состоит в том, что цвета маркера меняются в зависимости от цвета фона всего элемента, т.е. картинки в бэкграунде надо менять во время смены цвета.

Условие:

Хотелось бы решить задачу так, чтобы для смены состояния нужно было только изменить класс(ы) родительского дива - без смены классов других элементов и, естественно, без выноса картинок в тэг img, поставленный вместо span.

Решение:

Приведенный выше код решает задачу для всех браузеров кроме, естественно, экспорера (win, IE8) - он не желает менять фоновую картинку при удалении фона (удалении класса checked в диве)

Вопрос:

Как пофиксить, желательно без написания 4-х классов фон+плюс, фон+минус, без_фона+плюс, без_фона+минус?

Заранее спасибо.

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0
Дай ссылку на нерабочий пример.+ скриншоты, один тот, что хочешь получить в итоге, другой самой проблемы, которая щас возникла.

http://clubpr.spb.ru/example/

При клике на "надпись" в IE не меняется картинка-значок (плюс или минус). В Opera и Mozilla всё работает.

Edited by a3.work
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy