Reputation: 439
I wanted to make responsive drop-right menu with sub-menu using html and CSS, tried some variants but I cannot set sub-menu properly.
Here is what I did so far
ul {
column-count: 4;
column-gap: 60px;
column-rule: 1px solid black;
}
ul li {
list-style: none;
position: relative;
}
ul li a {
text-decoration: none;
color: red;
}
.sub-menu {
display: none;
}
ul li:hover .sub-menu {
display: block;
position: absolute;
}
<ul>
<li>
<a href="">Category > </a>
<ul class=sub-menu>
<li>Sub-menu</li>
<li>Sub-menu</li>
<li>Sub-menu</li>
</ul>
</li>
</ul>
https://jsfiddle.net/yvebudf9/4/
Upvotes: 2
Views: 355
Reputation: 705
If you want everything on the same line you can use something like this.
ul {
list-style: none;
}
ul li a {
text-decoration: none;
color: red;
}
.dropdown{
display: flex;
width: min-content;
white-space: nowrap;
position: relative;
}
.sub-menu {
display: none;
position: absolute;
top: 0;
left: 50px;
}
ul li:hover .sub-menu {
display: flex;
column-gap: 10px;
}
<ul>
<li class="dropdown">
<a href="">Category > </a>
<ul class="sub-menu">
<li>Sub-menu</li>
<li>Sub-menu</li>
<li>Sub-menu</li>
</ul>
</li>
</ul>
Upvotes: 0
Reputation: 508
ul {
column-gap: 60px;
column-rule: 1px solid black;
}
ul li {
list-style: none;
position:relative;
}
ul li a {
text-decoration: none;
color: red;
}
.sub-menu {
display:none;
position: absolute;
top:0%;
left:10%;
}
ul li:hover .sub-menu {
display: block;
}
<ul>
<li>
<a href="">Category > </a>
<ul class=sub-menu>
<li>Sub-menu</li>
<li>Sub-menu</li>
<li>Sub-menu</li>
</ul>
</li>
</ul>
Upvotes: 2