Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.09.2012, 13:45
Профессор
Отправить личное сообщение для PashPP Посмотреть профиль Найти все сообщения от PashPP
 
Регистрация: 26.07.2012
Сообщений: 281

Псевдоселекторы
Почему, если я задаю .style.backgroundColor элементу, то на него перестают действовать псевдоселекторы сss, которые так же должны изменять фон при наведении/активации и т.д.?
По идеи, оно перезаписывает и псевдоселекторы. Тогда как этого избежать?
Каждый раз снова прописывать .onmouseover и т.д, что ли?
Но это совсем не ок.
Ответить с цитированием
  #2 (permalink)  
Старый 23.09.2012, 14:33
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

тестовый пример
свойство style имеет больший приоритет и не связано с заданием стилей в тегах style
Ответить с цитированием
  #3 (permalink)  
Старый 23.09.2012, 14:51
Профессор
Отправить личное сообщение для PashPP Посмотреть профиль Найти все сообщения от PashPP
 
Регистрация: 26.07.2012
Сообщений: 281

<style>
#h:hover {
background-color: green;
}
</style>
<body>
<div id='h'> HHHHH </div>
<script type='text/javascript'>
var f = document.getElementById('h');

f.onclick = function() { f.style.backgroundColor = 'red'; }
</script>
</body>
Ответить с цитированием
  #4 (permalink)  
Старый 23.09.2012, 14:58
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Факт есть факт
Тогда наверное только изменять значения в самих тегах style: либо обращаться к cssRule, либо выносить правило в отдельные теги style и менять их inner

Последний раз редактировалось bes, 23.09.2012 в 15:03.
Ответить с цитированием
  #5 (permalink)  
Старый 23.09.2012, 15:05
Профессор
Отправить личное сообщение для PashPP Посмотреть профиль Найти все сообщения от PashPP
 
Регистрация: 26.07.2012
Сообщений: 281

bes,
Хм. Жаль. Ну ладно, спасибо.
Ответить с цитированием
  #6 (permalink)  
Старый 23.09.2012, 15:12
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

<style>
#h:hover {
background-color: green !important;
}
</style>
<body>
<div id='h'> HHHHH </div>
<script type='text/javascript'>
var f = document.getElementById('h');
 
f.onclick = function() { f.style.backgroundColor = 'red'; }
</script>
</body>
__________________
29375, 35
Ответить с цитированием
  #7 (permalink)  
Старый 23.09.2012, 15:15
Профессор
Отправить личное сообщение для PashPP Посмотреть профиль Найти все сообщения от PashPP
 
Регистрация: 26.07.2012
Сообщений: 281

Aetae,
О. Вот как все просто-то.
Ответить с цитированием
  #8 (permalink)  
Старый 23.09.2012, 16:04
Аватар для Dim@
Профессор
Отправить личное сообщение для Dim@ Посмотреть профиль Найти все сообщения от Dim@
 
Регистрация: 21.04.2012
Сообщений: 951

Aetae,
PashPP,
используется !important что не гуд
Ответить с цитированием
  #9 (permalink)  
Старый 23.09.2012, 16:14
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

В случае в hover - вполне оправдано.
__________________
29375, 35
Ответить с цитированием
  #10 (permalink)  
Старый 23.09.2012, 16:17
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

ну да, про усиление приоритета я сегодня не вспомнил
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск