CSS快速入门-鼠标悬浮(hover伪类)

一、概述

hover伪类:在鼠标移到元素上时向此元素添加特殊的样式。比较普通的就是一个url,当你鼠标放上去后,会变颜色。

在现实的应用场景也非常之多。最常见的是网站的悬浮导航,当鼠标放到导航条上时,会出现颜色变化或者元素自动伸出菜单栏。

 

 实例1:鼠标hover时,将内容框起来

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .ele:hover {
            border:1px solid red;
        }
        .ele {    #去掉边框闪烁问题。(因为边框1像素会导致闪烁,所以先用1px透明色占住位置,hover时再让其变红,就不会觉得有闪烁了)
            border:1px solid transparent;
        }
    </style>
</head>
<body>
    <div class="ele">
        <div>222</div>
        <div class="ele-item">111</div>
    </div>
</body>
</html>

  

原始效果:

 

鼠标悬停后:

 

 实例2:尾品会vdangdang.com首页最下面有这样的图片

 原始网页:

 

鼠标悬停后效果:

 

 其实这个主要就是用hover制作而成。下面说一下具体实现:

实现思路:

1、新建一个div1
2、新建一个div2,把底部图片放入div2
3、再新建一个div3,悬浮内容放入div3

HTML代码:

<div class="touch">
        <div><img src="3.png"></div>
        <div class="content">
            <p><h5>品牌故事</h5></p>
            <p><h6>我们的源泉不是时尚,不是潮流,而是由心而发的喜爱,将精致华丽的艺术融入东方式的低调,都只为了一个人而存在。</h6></p>
            <input class="inpt" type="text" name="tel" id="tel"/>
            <button class="btn">开售提醒</button>
        </div>
   </div>

  

CSS代码:

1、定义div1高度和宽度,class为touch,overflow设置为hidden,图片超过定义的高度和宽度会隐藏。
.touch {
height:200px;
width:400px;
overflow:hidden;
position:relative;
}


2、div2为content,内容必须填满div1,所以设置上下左右都为0.且设置字体大小、颜色、对齐方式。

首先设置div2为不可见,即在鼠标hover之前内容默认是隐藏的,当鼠标悬浮后,再放出来。


.touch .content {
top:0;
left:0;
right:0;
bottom:0;
position:absolute;
font-size:20px;
background-color:black;
color:white;
text-align:center;
visibility:hidden;
}

3、设置鼠标悬浮时样式。内容放出来,且设置背景图片透明度为0.5,可以被看到。
.touch:hover .content{
visibility:visible;
border:4px solid red;
background-color:rgba(0,0,0,0.5)
}
4、最后设置input框和button
.touch .content .btn{
background-color:#e83375;
color:white;
cursor: pointer;
border: none;
width: 70px;
height: 22px;
}
.touch .content .inpt{
height: 18px;
border: none
line-height: 18px;
font-size: 12px;
}

 

整体html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .touch {
            height:200px;
            width:400px;
            overflow:hidden;
            position:relative;
        }
        .touch .content {
            top:0;
            left:0;
            right:0;
            bottom:0;
            position:absolute;
            font-size:20px;
            background-color:black;
            color:white;
            text-align:center;
            visibility:hidden;
        }

       .touch:hover .content{
            visibility:visible;
            border:4px solid red;
            background-color:rgba(0,0,0,0.5)
        }
       .touch .content .btn{
            background-color:#e83375;
            color:white;
            cursor: pointer;
            border: none;
            width: 70px;
            height: 22px;
            }
         .touch .content .inpt{
            height: 18px;
            border: none
            line-height: 18px;
            font-size: 12px;
         }

    </style>
</head>
<body>
    <div class="touch">
        <div><img src="3.png"></div>
        <div class="content">
            <p><h5>品牌故事</h5></p>
            <p><h6>我们的源泉不是时尚,不是潮流,而是由心而发的喜爱,将精致华丽的艺术融入东方式的低调,都只为了一个人而存在。

</h6></p>
            <input class="inpt" type="text" name="tel" value="请输入手机号码或邮箱地址" id="tel"/>
            <button class="btn">开售提醒</button>
        </div>
    </div>
</body>
</html>

  

关键知识点:

1、最外面的div设置成relative,把content设置absolute,然后top、bottom、left、right设置均为0,即把content铺满div;

2、visibility:hidden;默认隐藏最上面的内容;

3、visibility:visible和background-color:rgba(0,0,0,0.5),hover时放出内容,并且设置背景透明度,可以看到背景图片;

 

转载于:https://www.cnblogs.com/skyflask/p/8886508.html

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CSS鼠标悬停状态的伪类是`:hover`。使用`:hover`可以为元素定义鼠标悬停时的样式,例如改变背景颜色、字体颜色等。下面是一个示例: ```css a:hover { color: red; } ``` 这个示例将链接元素(`<a>`标签)的字体颜色改为红色,当用户将鼠标悬停在链接上时。 ### 回答2: CSS伪类是一种用于为特殊状态或位置的元素应用样式的方法。其中之一就是鼠标悬停状态的伪类,即:hover伪类。 :hover伪类用于指定鼠标悬停在元素上时应用的样式。当鼠标悬停在元素上方时,这个元素的样式会发生改变,以提供更好的用户体验。 使用:hover伪类时,可以为元素应用各种样式,例如改变背景颜色、字体颜色、边框、大小等。我们可以通过简单的CSS语法来指定:hover伪类样式,例如: ``` button:hover { background-color: red; color: white; } ``` 上述代码表示在鼠标悬停在button元素上时,按钮的背景颜色会变为红色,而字体颜色会变为白色。 需要注意的是,:hover伪类只能应用到可交互元素,例如链接、按钮、输入框等。对于一些非交互元素(例如div、p等),可以通过CSS的cursor属性来改变鼠标在上面的样式,但不能通过:hover伪类来为其指定样式。 总结起来,CSS的:hover伪类是一种非常有用的方法,我们可以利用它来增强用户体验,通过改变元素的样式来提醒用户当前所处的状态。 ### 回答3: CSS 中的鼠标悬停状态伪类是指当鼠标指针悬停在某个元素上时应用的样式。该伪类通过:hover选择器来实现。在CSS 中,使用:hover伪类可以对指定元素在鼠标悬停状态下应用特定的样式效果。 使用:hover伪类可以为鼠标悬停状态下的元素设置各种属性,包括颜色、背景、边框等以及其他动画和过渡效果。通过为:hover设置样式,可以提高用户体验和界面交互效果。 例如,可以通过:hover伪类设置链接的样式,在鼠标悬停时改变链接的颜色、字体大小或者添加下划线等效果。还可以利用:hover伪类实现一些动态的效果,例如在鼠标悬停时弹出提示框、显示隐藏的内容或者改变元素的位置和尺寸等。 同时,可以结合其他伪类选择器,如:active和:focus,来实现更多鼠标交互效果。通过联合使用这些伪类选择器,可以更细粒度地控制元素的样式变化,提高网页的可用性和可访问性。 总之,CSS 中的:hover伪类是一个十分常用的选择器,它能够为鼠标悬停状态下的元素提供各种样式效果,使得页面更加生动和直观,提升用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值