html - 有什么方法可以在不使用的情况下提供下拉菜单
问题描述
我有一个博客网站,想制作一个下拉菜单,但不使用语法。我已经在菜单栏上创建了菜单超链接,我只想在该超链接中包含下拉菜单,因为我已经使用 CSS 以我的方式设计它并且不想破坏该设计。请建议我该怎么做。
添加语法会破坏整体外观并形成类似设计的盒子。
解决方案
HTML:
<div id="menu" class="dropdown">
<ul>
<li class="menu-item" data-url="#page1">Item 1</li>
<li class="menu-item" data-url="#page2">Item 2</li>
<li class="menu-item" data-url="#page3">Item 3</li>
</ul>
<span id="menu-button" class="fa fa-bars"></span>
</div>
CSS:
.dropdown {
margin-top: -100px;
height: 100px;
position: relative;
background-color: blue;
width: fit-content;
}
.dropdown>ul {
list-style-type: none;
padding: 0;
margin: 0;
}
.dropdown>ul>li {
cursor: pointer;
padding: 0.3em 1em 0.3em 1em;
margin: 0;
-o-transition: .5s;
-ms-transition: .5s;
-moz-transition: .5s;
-webkit-transition: .5s;
transition: .5s;
}
.dropdown>ul>li:hover {
background-color: black;
color: white;
}
.dropdown>span {
cursor: pointer;
position: absolute;
bottom: -1em;
-o-transition: .5s;
-ms-transition: .5s;
-moz-transition: .5s;
-webkit-transition: .5s;
transition: .5s;
}
.dropdown>span:hover {
opacity: 0.5;
}
JS:
$(document).ready(function() {
$("#menu-button").click(function() {
toggleMenu();
});
$(".menu-item").click(function(){
var url=$(this).attr("data-url");
console.log(url);
toggleMenu();
});
});
function toggleMenu() {
var slider = "#menu";
var sliderHeight = $(slider).height();
if ($(slider).css("margin-top") == -sliderHeight + "px" && !$(slider).is(':animated')) {
$(slider).animate({
"margin-top": '+=' + sliderHeight
});
$(this).addClass("active");
} else {
if (!$(slider).is(':animated')) {
$(slider).animate({
"margin-top": '-=' + sliderHeight
});
$(this).removeClass("active");
}
}
}
推荐阅读
- r - 如何将ID与R中不同数据框中的名称匹配
- html - 无法使用 BootStrap4 更改轮播标题的背景颜色
- codenameone - 代号 每 N 秒一个动作
- java - 我可以用数据库中的实际数据替换我的表格排列的虚拟值吗?
- html - 如何使徽标丸超出 div 边界?
- python - 如何使结果成为正确的句子?
- python - 是否有 django 方法将记录分组(列表中的组)并返回每个项目组的出现列表?
- javascript - Iterate through HTML div and extract the value from a child span using JavaScript or jQuery
- python - 只找到一个具有指定值的子集和
- javascript - 在反应中传递给功能组件时,道具未定义