here is my problem.
I have a div
which contains two other divs
: basically one for header, one for content.
I'd like to lighten (change alpha level, or some other method is welcomed), when the user points the mouse over the parent div
. Colors of both child divs
should change and become slightly lighter. I'd like to avoid javascript if possible.
How to do this in CSS?
Like this?
Live Demo
Relevant CSS:
#container:hover .inner {
opacity: 0.8
}
HTML:
<div id="container">
<div id="left" class="inner"></div>
<div id="right" class="inner"></div>
</div>
Irrelevant CSS:
#container {
width: 300px;
padding: 30px;
overflow: hidden
}
.inner {
width: 40%;
height: 250px;
background: #ccc
}
#left {
float: left
}
#right {
float: right
}
Truly Irrelevant CSS:
#container {
background: #fcecfc; /* old browsers */
background: -moz-linear-gradient(top, #fcecfc 0%, #fba6e1 50%, #fd89d7 51%, #ff7cd8 100%); /* firefox */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fcecfc), color-stop(50%,#fba6e1), color-stop(51%,#fd89d7), color-stop(100%,#ff7cd8)); /* webkit */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcecfc', endColorstr='#ff7cd8',GradientType=0 ); /* ie */
}
#div:hover #div1{
color:#lightercolor;
}
#div:hover #div2{
color:#lightercolor;
}
You can use #div:hover, perhaps?
#parent_div:hover #child_div_1 { background-color: #333; }
#parent_div:hover #child_div_2 { background-color: #666; }