1

I have some <a> wrapped in a <li>, I want to make width of each <a> follows width of <li> which is same for each <li> so all the area of every <li> (area of <a> too) is clickable.

I set width : 100% in <a> then set specific width for <li> but didn't work. How can it be done?

Please Help. Thank you very much

This is my code :

HTML :

<ul class='sidenav'>
<?php   
  foreach ($menu as $key => $value) 
  {
  echo "<li> <a href=".$value[2].".php>".$value[1]."</a> </li>";
  }
?>
</ul>

CSS :

#sidenav li{
  border     : 1px solid red;
  padding    : 10px 10px 10px 0px;
  margin-top : 10px;
  width      : 250px;
}

#sidenav li a{
  border  : 1px solid green;
  padding : 10px 10px 10px 10px;
  width   : 100%;
}

this is the result

januaryananda
  • 397
  • 1
  • 5
  • 15

4 Answers4

2

Make use of display:block property in li a

Here is your code in action https://jsfiddle.net/sw556vrv/3/

#sidenav li{
  border     : 1px solid red;
  margin-top : 10px;
  width      : 250px;
  height     : 100px;
}

#sidenav li a{
  border  : 1px solid green;
  margin: 0px auto;  
  display:block; // <-- read about this property
  width   : 100%; // <-- 100% or parent
  height : 100%;
}
Piotr Dajlido
  • 1,982
  • 15
  • 28