2016-08-27 11 views
0

Добрый день, каждый, я пытаюсь применить свойство box-shadow к веб-странице, но если я применил эффект к нормальному состоянию, все будет хорошо, но в состоянии зависания, если я наведите курсор на ребенка, он применяется как к родительскому, так и к ребенку.Свойство Hover относится к ребенку

Нормальное состояние: все работает отлично состояние Normal State

парения: свойство применяется к каждому элементу в DIV Hover state

Я попытался с помощью Jquery, чтобы переключить состояние, но он не работает.

HTML

<div class="results"> 
    <div class="result_wrapper"> 
    <div class="result"> 
     <h2 class="single"><a href="#"><font size="4dp">A title</font></a></h2> 
     <div class="single">shortDiscription</div> 
    </div> 
    </div> 
</div> 

CSS

.result { 
    background-color: #fff0f0; 
    padding: 5px; 
    margin: 1%; 
    width: 600px; 
    box-shadow: 2px 2px 5px grey; 
    transition: all 0.5s ease; 
} 

.myClmass :hover { 
    display: block; 
    box-shadow: 2px 2px 5px grey; 
    transition: all 0.5s ease; 
} 

.singleHover { 
    all: revert; 
} 

.results { 
    float: left; 
} 

.vid { 
    float: right; 
    margin: 1%; 
} 

.vidHeader { 
    background-color: #d69797; 
    padding-top: 10px; 
    padding-bottom: 10px; 
    padding-right: 400px; 
    padding-left: 5%; 
    text-align: center; 
} 

Это мой сервлетов Java код:

out.println("<div class=\"results\">"); 
       for(Element post : results){ 
        String link = post.childNode(0).childNode(0).absUrl("href"); 
        String title = post.getElementsByTag("a").text(); 
        String shortDiscription = post.getElementsByClass("b_caption").get(0).child(1).toString(); 
        out.println("<div class=\"result_wrapper\" >"); 
        out.println("<div class=\"result\">"); 
        out.println("<h2 class=\"single\"><a href=\""+link+"\"><font size=\"4dp\">"+title+"</font></a></h2>"); 
        out.println("<div class=\"single\">"+shortDiscription+"</div>"); 
        out.println("</div></div>"); 
       } 
       out.println("</div>"); 
+2

Нам нужен ваш код, чтобы помочь вам с проблемой. – Paul

+1

Показать фактический вывод, который был отправлен в браузер, и, самое главное, соответствующую часть вашего кода css, содержащую ваш ': hover'. –

+0

Вы не должны указывать код на стороне сервера для таких проблем, но соответствующий html-код, который отправляется клиенту. Вы не должны ожидать, что кто-то попытается выяснить, как ваш код на стороне сервера составляет ваш фактический html-код, который вы отправляете клиенту. Поэтому, если у вас есть похожие вопросы в будущем, проверьте исходный код в своем браузере и разместите соответствующие разделы здесь. –

ответ

2

Селектор .myClmass :hover означает, что это правило применяется ко всем элементам потомка элемента с классом myClmass, где мышь фактически завершена. Таким образом, ваше правило применяется ко всем элементам, которые находятся внутри элемента с классом myClmass

Если вы хотите применить тень окна к элементу с классом myClmass, то селектор должен быть .myClmass:hover без пространства между .myClmass и :hover

+0

Спасибо большое, это была проблема – Collins

-1

Попробуйте pointer-events:none; на ваш дочерний элемент в вашем css

+0

Хотя это, вероятно, решит проблему, это скорее обходной путь, потому что проблема не должна возникать, если ОП использует ': hover' правильно. –

+0

Пожалуйста, я не знаю, как использовать указатели-события: none; – Collins

+0

@ t.niese вы правы, но кажется, что коллины не знают, как использовать свойство наведения, и он не дал нам свой CSS, поэтому он, кажется, единственный способ помочь ему прямо сейчас. –