html - CSS opacity wont work inside li on hover -


opacity:1; seems not work when hover on link,although commands background:red seems work.can explain why , how make opacity work?

css:

.secondblock{     border-bottom: solid black 1px;     height:260px;     text-decoration: none; } .secondblock:hover li{     opacity:0.5;}  ul li a:hover{     background:red;     opacity:1; }   /*.secondblock li:hover{*/ /*opacity:1.0;*/ /*}*/ 

html:

<div class="secondblock"> <ul>     <li><a href="" class="secondlinks secondlink1"><img src="images/i1.png" class="imagelist">Главная</a></li>     <li><a href="" class="secondlinks secondlink2"><img src="images/i2.png" class="imagelist">Служба</a></li>     <li><a href="" class="secondlinks secondlink3"><img src="images/i3.png" class="imagelist">Рендзина</a></li>     <li><a href="" class="secondlinks secondlink4"><img src="images/i4.png" class="imagelist">Солеперенос</a></li>     <li><a href="" class="secondlinks secondlink5"><img src="images/i5.png" class="imagelist">Медиапланировние</a></li>     <li><a href="" class="secondlinks secondlink6"><img src="images/i6.png" class="imagelist">Таргетирование</a></li>     <li><a href="" class="secondlinks secondlink7"><img src="images/i7.png" class="imagelist">Позиционирование</a></li>     <li><a href="" class="secondlinks secondlink8"><img src="images/i8.png" class="imagelist">Медиамикс</a></li>     <li><a href="" class="secondlinks secondlink9"><img src="images/i9.png" class="imagelist">Законодательство</a></li>     <li><a href="" class="secondlinks secondlink10"><img src="images/i10.png" class="imagelist">Жеода</a></li> </ul> 

update: `

.secondblock:hover a{     opacity:0.5;  }  ul li a:hover{        background:red;       opacity:1;  } 

`

the css opacity property relative parents opacity:x; children equals opacity:x*{parentopacity}; example:

.parent {   opacity:0.5; } .children {   opacity:0.5; /* equals 0.5*0.5 0.25 */ } 

demo explain it.

documentation mdn:

the value applies element whole, including contents, though value not inherited child elements. thus, element , contained children have same opacity relative element's background, if element , children have different opacities relative 1 another.

.parent {    opacity:0.5;  }  .children {    width:200px;    height:200px;    background-color:red;  }  #children1 {    opacity:0.5; /* 0.5 of parent */  }
<div class="parent">  <div class="children" id="children1">    </div>  <div class="children" id="children2">    </div>  </div>

solution:

since want change link opacity can use color:rgba(0,0,0,x); instead.

then:

.parent {   color:rgba(0,0,0,0.5); /* opacity:0.5; */ } .children {   color:rgba(0,0,0,1); /* opacity:1; */ } 

also have change img opacity when hover a.

working demo.

.secondblock {    border-bottom: solid black 1px;    height: 260px;    text-decoration: none;  }  .secondblock {    color:rgba(0,0,0,1);  }    .secondblock:hover li {    color:rgba(0,0,0,0.5);  }    .secondblock:hover li img {    opacity:0.5;  }    .secondblock ul li a:hover {    color:rgba(0,0,0,1);  }  .secondblock ul li a:hover > img {    opacity:1;  }
<div class="secondblock">    <ul>      <li>        <a href="" class="secondlinks secondlink6"><img src="http://www.placehold.it/32/32" class="imagelist">Таргетирование</a>      </li>      <li>        <a href="" class="secondlinks secondlink7"><img src="http://www.placehold.it/32/32" class="imagelist">Позиционирование</a>      </li>      <li>        <a href="" class="secondlinks secondlink8"><img src="http://www.placehold.it/32/32" class="imagelist">Медиамикс</a>      </li>    </ul>


Comments

Popular posts from this blog

sql server - Cannot query correctly (MSSQL - PHP - JSON) -

php - trouble displaying mysqli database results in correct order -

C++ Linked List -