美文网首页
CSS下拉菜单

CSS下拉菜单

作者: convertible | 来源:发表于2018-01-29 16:09 被阅读0次

基本下拉菜单

当鼠标移动到指定元素上时,会出现下拉菜单。

实例

<style>
.dropdown {
position: relative;
display: inline-block;
}

.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
padding: 12px 16px;
z-index: 1;
}

.dropdown:hover .dropdown-content {
display: block;
}
</style>

<div class="dropdown">
<span>Mouse over me</span>
<div class="dropdown-content">
<p>Hello World!</p>
</div>
</div>

实例解析

HTML 部分:

我们可以使用任何的 HTML 元素来打开下拉菜单,如:<span>, 或 a <button> 元素。

使用容器元素 (如: <div>) 来创建下拉菜单的内容,并放在任何你想放的位置上。

使用 <div> 元素来包裹这些元素,并使用 CSS 来设置下拉内容的样式。

CSS 部分:

.dropdown 类使用 position:relative, 这将设置下拉菜单的内容放置在下拉按钮 (使用 position:absolute) 的右下角位置。

.dropdown-content 类中是实际的下拉菜单。默认是隐藏的,在鼠标移动到指定元素后会显示。 注意 min-width 的值设置为 160px。你可以随意修改它。 注意: 如果你想设置下拉内容与下拉按钮的宽度一致,可设置 width 为 100% ( overflow:auto 设置可以在小尺寸屏幕上滚动)。

我们使用 box-shadow 属性让下拉菜单看起来像一个"卡片"。

:hover 选择器用于在用户将鼠标移动到下拉按钮上时显示下拉菜单。
下拉内容对齐方式
float:left;

float:right;

如果你想设置右浮动的下拉菜单内容方向是从右到左,而不是从左到右,可以添加以下代码 right: 0;

提示信息

实例解析
HTML) 使用容器元素 (like <div>) 并添加 "tooltip" 类。在鼠标移动到 <div> 上时显示提示信息。
提示文本放在内联函数上(如 <span>) 并使用class="tooltiptext"。
CSS)tooltip 类使用 position:relative, 提示文本需要设置定位值 position:absolute。

定位提示工具

提示工具显示在指定元素的右侧(left:105%) 。
注意 top:-5px 同于定位在容器元素的中间。使用数字 5 因为提示文本的顶部和底部的内边距(padding)是 5px。
如果你修改 padding 的值,top 值也要对应修改,这样才可以确保它是居中对齐的。
在提示框显示在左边的情况也是这个原理。
显示在右侧:

.tooltip .tooltiptext {
    top: -5px;
    left: 105%; 
}

显示在左侧:

.tooltip .tooltiptext {
    top: -5px;
    right: 105%; 
}

显示在头部:

.tooltip .tooltiptext {
    width: 120px;
    bottom: 100%;
    left: 50%; 
    margin-left: -60px; /* 使用一半宽度 (120/2 = 60) 来居中提示工具 */
}

显示在底部:

.tooltip .tooltiptext {
    width: 120px;
    top: 100%;
    left: 50%; 
    margin-left: -60px; /* 使用一半宽度 (120/2 = 60) 来居中提示工具 */
}

添加箭头

我们可以用CSS 伪元素 ::after 及 content 属性为提示工具创建一个小箭头标志,箭头是由边框组成的,但组合起来后提示工具像个语音信息框。
1.顶部提示框/底部箭头:
.tooltip .tooltiptext::after {
content: " ";
position: absolute;
top: 100%; /* 提示工具底部 */
left: 50%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: black transparent transparent transparent;
}
在提示工具内定位箭头: top: 100% , 箭头将显示在提示工具的底部。left: 50% 用于居中对齐箭头。
注意:border-width 属性指定了箭头的大小。如果你修改它,也要修改 margin-left 值。这样箭头在能居中显示。
border-color 用于将内容转换为箭头。设置顶部边框为黑色,其他是透明的。如果设置了其他的也是黑色则会显示为一个黑色的四边形。

相关文章

  • css学习 第五天

    CSS 下拉菜单 使用 CSS 创建一个鼠标移动上去后显示下拉菜单的效果。 基本下拉菜单 当鼠标移动到指定元素上时...

  • HTML常用标签和CSS

    表单标签 下拉菜单和多行文本域 空白标签 认识CSS CSS选择器 伪类选择器

  • day22-HTML和CSS

    一、标杆标签 二、下拉菜单 三、空白标签 四、认识CSS 五、CSS选择器 六、伪类选择器

  • HTML和CSS

    表单标签 表单标签(下拉菜单和多行文本域) 空白标签 认识css css选择器 伪类选择器

  • Day22表单标签和CSS基础

    表单标签和input标签 下拉菜单和多行文本域 div和span CSS基础 CSS选择器 伪类选择器

  • 下拉菜单

    .dropdown { position: relative; display: inline-block; } ...

  • CSS下拉菜单

    基本下拉菜单 当鼠标移动到指定元素上时,会出现下拉菜单。 实例 .dropdown {position: rela...

  • CSS 下拉菜单

  • 2018-10-30-day2-表单标签和CSS基础

    一.单标签和input标签 二.下拉菜单和多行文本域 三.div和span 四.css基础 五.css选择器 六....

  • python 表单标签和CSS基础

    一、表单标签和input标签 二、下拉菜单和多行文本域 三、div和span 四、CSS基础 五、CSS选择器 六...

网友评论

      本文标题:CSS下拉菜单

      本文链接:https://www.haomeiwen.com/subject/fcrwaxtx.html