Рассмотрим следующие css и html.Предотвратить рекурсивный CSS: эффект зависания
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Hover Test</title>
<style>
div {
min-height: 20px;
margin:20px;
border: 1px solid #000;
background-color: #fff;
}
div:hover {
background-color: #000;
}
</style>
</head>
<body>
<div>
<div>
<div></div>
<div></div>
</div>
<div>
<div></div>
<div></div>
</div>
</div>
<div>
<div>
<div></div>
<div></div>
</div>
<div>
<div></div>
<div></div>
</div>
</div>
</body>
</html>
Результирующий эффект заключается в том, что он показывает эффект наведения на всех узлах мыши, независимо от дочерних узлов.
Эффект, за которым я запираюсь, - это показать эффект наведения только на узлах, на которых прячется мышь. Это не показывает эффект наведения на элемент, когда мышь находится над дочерним узлом.
Есть ли способ сделать это только в CSS?
Если не я предполагаю, что я всегда мог использовать OnMouseOveronmouseout обработчиков событий и с помощью класса CSS .hover или аналогичный. Butt Я бы предпочел найти решение, которое не мутирует поврежденный dom-узел и легко настраивается с помощью CSS.
Мне любопытно: что с ' Xml version =" 1.0 "encoding =" UTF-8 "?>' Перед документом XHTML – mauris
@thephpdeveloper: документы XHTML 1.0/1.1, используемые как 'application/xhtml + xml' требует подтверждения XML-объявления. Однако, если вы обслуживаете их как «text/html», объявление XML не требуется. Лучше оставить его, иначе IE (по крайней мере, я думаю, IE6) перейдет в режим quirks. – BoltClock