Обернуть блок в div с помощью expression'а в css
Приятного дня.
Захотелось мне создать с помощью expression'a в ie6 ie7 обертку, что бы сделать откат от css3 свойств. Попробовал варианты: .user-say{ z-index:expression( runtimeStyle.zIndex=1, function(t){ var w = document.createElement('div'); w.appendChild(t.replaceNode(w,t)); }(this) ); } .user-say{ expression( function(t){ var w = document.createElement('div'); w.className='my-class'; w.appendChild(t.replaceNode(w,t)); }(this) ); } Не работает. А эти вообще ie вешают ↓ .class1{ z-index:expression(runtimeStyle.zIndex=1,wraper=document.createElement('DIV'),wraper.className='new-wrapper',wraper.appendChild(this.cloneNode(true)),this.replaceNode(wraper)); } .class2{ z-index:expression(runtimeStyle.zIndex=1,this.replaceNode(document.createElement('DIV').appendChild(this.cloneNode(true)))); } Подскажите, пожалуйста, где я напутал и как надо. |
Цитата:
Цитата:
|
Цитата:
Можно написать так: <div class="comment"><p>...</p><p>...</p><div class="maskot"></div></div> и в стилях .comment{} .maskot{} И в результате мы получим элемент представления в коде. А этого быть не должно. Лучшим решением будет: <div class="comment"><p>...</p><p>...</p></div> и в стилях .comment{} .comment:after{} Но ie6,ie7 работать с :after не будут. Вот тут мы и используем expression <div class="comment"><p>...</p><p>...</p></div> и в стилях .comment{} .comment:after{} * html .comment{z-index:expression(runtimeStyle.zIndex=1,this.innerHTML = this.innerHTML+"<div class='maskot'></div>");} *+html .comment{z-index:expression(runtimeStyle.zIndex=1,this.innerHTML = this.innerHTML+"<div class='maskot'></div>");} .comment .maskot{} Ну вот вам и fall-back. Правда от css2 свойства. Цитата:
Альтернатива — куча представительских элементов в html. Давайте не будем холиварить, стоит ли использовать expression'ы или нет. Плюсы и минусы все понимают и каждый это решит для себя сам. Лучше подскажите, пожалуйста, как можно решить описанную выше проблему. |
http://pastie.org/1418424
Вопрос закрыт. |
Часовой пояс GMT +3, время: 19:46. |