#html #css
#HTML #css
Вопрос:
Я пытаюсь изменить цвет h2
тега внутри a div
. Другие элементы внутри этого div
изменяются на белый цвет при наведении курсора мыши, только h2
цвет не меняется. Я знаю, что могу изменить это в CSS … .well.sb:hover, .well.sb:hover h2
, но плохо в том, что h2
часть меняет цвет отдельно от остальных. При наведении курсора мыши на все это, все (включая h2) должно изменить цвет текста на белый одновременно и с одинаковой скоростью и для одного и того же большого и единственного раздела div. Как заставить это работать?
h2.title-article-sidebar {
font-size: 14px;
font-family: Calibri;
color: #444;
font-weight: 700;
line-height: 1.25em;
margin-top: 0;
}
.article-image-summary-sidebar {
border: 0 solid;
padding-bottom: 0;
-moz-transition: .9s ease;
-webkit-transition: .9s ease;
-o-transition: .9s ease;
-ms-transition: .9s ease;
transition: .9s ease;
}
.well.sb:hover {
color: #FFF;
background-color: #A10000;
text-decoration: none;
-moz-transition: .6s ease-in-out;
-webkit-transition: .6s ease-in-out;
-o-transition: .6s ease-in-out;
-ms-transition: .6s ease-in-out;
transition: .6s ease-in-out;
}
<div class="well sb"><div>
<div class="article-image-summary-sidebar">
<img alt="X" src="http://loremxpixel.com/200/200">
<div class="article-date-summary-sidebar">
20-November-2010
</div>
<div class="article-tag-summary-sidebar">
TAG
</div>
<h2 class="title-article-sidebar">
TITLE WITH H2 TAG!!!!
</h2>
</div>
</div></div>
Ответ №1:
Происходит 2 вещи. Во-первых, вам нужно более конкретно настроить таргетинг на h2 (он переопределяет ваши стили наведения). Во-вторых, у вас конфликтующие переходы.
h2.title-article-sidebar {
font-size: 14px;
font-family: Calibri;
color: #444;
font-weight: 700;
line-height: 1.25em;
margin-top: 0;
}
.article-image-summary-sidebar {
border: 0 solid;
padding-bottom: 0;
/* -moz-transition: .9s ease;
-webkit-transition: .9s ease;
-o-transition: .9s ease;
-ms-transition: .9s ease;
transition: .9s ease; */
}
.well.sb:hover {
color: #FFF;
background-color: #A10000;
text-decoration: none;
-moz-transition: .6s ease-in-out;
-webkit-transition: .6s ease-in-out;
-o-transition: .6s ease-in-out;
-ms-transition: .6s ease-in-out;
transition: .6s ease-in-out;
}
.well.sb:hover h2.title-article-sidebar {
color: #FFF;
-moz-transition: .6s ease-in-out;
-webkit-transition: .6s ease-in-out;
-o-transition: .6s ease-in-out;
-ms-transition: .6s ease-in-out;
transition: .6s ease-in-out;
}
<div class="well sb"><div>
<div class="article-image-summary-sidebar">
<img alt="X" src="http://loremxpixel.com/200/200">
<div class="article-date-summary-sidebar">
20-November-2010
</div>
<div class="article-tag-summary-sidebar">
TAG
</div>
<h2 class="title-article-sidebar">
TITLE WITH H2 TAG!!!!
</h2>
</div>
</div></div>
Ответ №2:
Просто удалите color: #444; из h2.title-article-sidebar
Комментарии:
1. цвет должен МЕНЯТЬСЯ, как я четко написал в моем описании, а не оставаться неизменным.
2. конечно, цвет изменится на белый, если вы удалите этот стиль
Ответ №3:
Последние версии Chrome, как правило, добавляют переходы во вложенные элементы (не уверен, что это ошибка или особенность).
Просто убедитесь, что дочерние элементы не имеют унаследованного перехода
h2.title-article-sidebar {
font-size: 14px;
font-family: Calibri;
color: #444;
font-weight: 700;
line-height: 1.25em;
margin-top: 0;
}
.article-image-summary-sidebar {
border: 0 solid;
padding-bottom: 0;
-moz-transition: .9s ease;
-webkit-transition: .9s ease;
-o-transition: .9s ease;
-ms-transition: .9s ease;
transition: .9s ease;
}
.well.sb:hover {
color: #FFF;
background-color: #A10000;
text-decoration: none;
-moz-transition: .6s ease-in-out;
-webkit-transition: .6s ease-in-out;
-o-transition: .6s ease-in-out;
-ms-transition: .6s ease-in-out;
transition: .6s ease-in-out;
}
.sb * {
transition: 0s;
}
<div class="well sb">
<div>
<div class="article-image-summary-sidebar">
<img alt="X" src="http://loremxpixel.com/200/200">
<div class="article-date-summary-sidebar">
20-November-2010
</div>
<div class="article-tag-summary-sidebar">
TAG
</div>
<h2 class="title-article-sidebar">
TITLE WITH H2 TAG!!!!
</h2>
</div>
</div>
</div>
Ответ №4:
Это решит проблему:
h2.title-article-sidebar {
font-size: 14px;
font-family: Calibri;
/* color: #444;*/
font-weight: 700;
line-height: 1.25em;
margin-top: 0;
}
.article-image-summary-sidebar {
border: 0 solid;
padding-bottom: 0;
}
.well.sb:hover {
color: #FFF;
background-color: #A10000;
text-decoration: none;
-moz-transition: .6s ease-in-out;
-webkit-transition: .6s ease-in-out;
-o-transition: .6s ease-in-out;
-ms-transition: .6s ease-in-out;
transition: .6s ease-in-out;
}
<div class="well sb"><div>
<div class="article-image-summary-sidebar">
<img alt="X" src="http://loremxpixel.com/200/200">
<div class="article-date-summary-sidebar">
20-November-2010
</div>
<div class="article-tag-summary-sidebar">
TAG
</div>
<h2 class="title-article-sidebar">
TITLE WITH H2 TAG!!!!
</h2>
</div>
</div></div>
Комментарии:
1. Я не думаю, что пользователь ищет это, поскольку он четко упомянул об изменении цвета. @Andre
2. Я не думаю, что он тоже этого хочет. Он уже отклонил один ответ, предполагающий то, что вы здесь объясняете.
#444
Я не думаю, что пользователь ищет комментарии. @Andre3. Я думаю, это лучший вариант. Я удалил анимацию из
.article-image-summary-sidebar
класса. и теперь анимация в порядке.4. Вы, должно быть, шутите правильно. Добавьте это
#444
обратно в код и посмотрите, как ваша работа завершается неудачей. @Andre5. Я сосредоточился на переходе и забыл добавить цвет обратно: D В любом случае, @mhatch уже ответил правильно.
Ответ №5:
У вас нет никаких проблем с вашей анимацией, как упоминалось в некоторых других ответах. Вы правильно написали свой код, и нет никаких specificity
проблем.
Я прикрепляю ссылку codepen, по которой я пытался решить вашу проблему: http://codepen.io/Sky-123/pen/mALGQZ
Анимации остаются неизменными, как вы их написали. Единственное изменение, которое я сделал, это добавил color:#444
h2
тег to через встроенную инструкцию, а затем удалил его в hover
in jQuery
, поскольку это вызывало проблемы в анимации..
Надеюсь, это решит вашу проблему.