2013-06-19 3 views
0

Я нашел некоторые ссылки на изменение цвета фона другой DIV в CSS с помощью:Изменить цвет div путем зависания содержимого?

#a:hover + #b{...} 

, но это не работает, если вы пытаетесь запустить его с помощью события курсора, находящегося на ссылку в слой div. Я не могу найти ответ на проблему в любом месте, но кажется, что это должно быть очень просто.

Мне кажется, что я не должен задавать этот вопрос, но как вы это делаете?

+1

CSS селекторы работают только на ребенке или а не родительские элементы. –

ответ

0

Если бы у них было достаточно смысла создавать для нас :parent псевдокласс. Тем временем вам нужно будет использовать JavaScript. Будет ли что-то вроде этой работы для вас?

<script type="text/javascript"> 
$(document).ready(function(e){ 
    $("div#divID a#anchorID").mouseenter(function(){ 
     var divElement = $(this).parent(); 
     // Style the div to its hover style (hovering over link) 
    }).mouseleave(function(){ 
     var divElement = $(this).parent(); 
     // Style the div to its base style (not hovering over link) 
    }); 
}); 
</script> 
+0

Теперь, придерживая этот код в начале страницы, ничего не делает, насколько я могу видеть. Я поместил .div: hover в файл CSS, но я действительно не думал о том, что это будет просто делать его собственная вещь. –

+0

Этот код требует jQuery, и вы должны заменить 'divID' на атрибут' id' вашего div и заменить 'anchorID' вашим атрибутом' id' вашей внутренней ссылки. –

+0

Я получил немного о атрибутах 'id', но я не понимал, что ему нужен jQuery. Я все еще немного новый, я думаю, но есть jQuery отдельная библиотека? –

0

Если это только изменение фона, вы можете играть с псевдо-элементом, position:relative/absolute и безопасные слои с z-index:

Демы идеи: http://codepen.io/anon/pen/kCxgy

Смежные вопросы