Форум hotibo.ru

Сайты - по стандартам, но не стандартные сайты!






#1 01.08.2010 22:48

spoul
Новичок
Зарегистрирован: 01.08.2010
Сообщений: 4

Проблема в Опера 8.5

Если быть точным, то эта проблема тянулась еще с 7-ки. Решения в англоязычном нете не нашел. На quirksmode.org этот баг описан.

А именно - если для объекта прописано обращение в листе стилей вида, например, #home #dirhead (сделано для отлова условия стиля для главной страницы). Так вот при таком написании изменить внешний вид объекта #dirhead потом JS-функцией по какому-либо событию не возможно.

Пример.

Стилевое правило:

#home #dirhead {
    border-width: 1px 0 0 0;
    background-color: transparent;
}

строка JS

var dh = document.getElementById("dirhead");
dh.style.borderWidth = '1px 0';

Работает в IE с 5, FF, Mozilla etc... В Опера "благодаря" указанному багу не работает.

Наличие указателя главной страницы в любом виде обязательно, указание #dirhead как ID - критично для CSS.

Есть ли уважаемых мастеров какие либо мысли, как пофиксить или обойти этот баг?

Отредактированно spoul (01.08.2010 22:49)

Нет на форуме

 

#2 02.08.2010 07:35

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Проблема в Опера 8.5

spoul

Код:

dh.setAttribute("class", className);

Где className - имя css-класса с  установками important.

Нет на форуме

 

#3 02.08.2010 16:17

spoul
Новичок
Зарегистрирован: 01.08.2010
Сообщений: 4

Re: Проблема в Опера 8.5

Благодарю за ответ, в принципе сам дошел до этой здравой мысли.
И даже important не потребовалось, все работает и так.

dh.className = 'classame'

Нет на форуме

 

Board footer