如何使用纯CSS实现悬停时右移的按钮效果(附源码)

本篇文章给大家带来的内容是关于如何使用纯css实现悬停时右移的按钮效果(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

效果预览

333285909-5b9a5a8cb02e4_articlex.gif

源代码下载

https://github.com/comehope/front-end-daily-challenges

代码解读

定义 dom,导航中包含一个无序列表,列表项中内嵌一个 span,文字写在 span 中:

居中显示:

立即学习“前端免费学习笔记(深入)”;

body {    margin: 0;    height: 100vh;    display: flex;    align-items: center;    justify-content: center;    background-color: #333;}

隐藏列表项前端的引导符号:

nav ul {    padding: 0;    list-style-type: none;}

设置按钮的尺寸和颜色:

nav li {    width: 8em;    height: 2em;    font-size: 25px;    color: orange;}

设置文字样式,注意高度是 120%span 比它父级的 li 要高一些:

nav li span {    position: relative;    box-sizing: border-box;    width: inherit;    height: 120%;    top: -10%;    background-color: #333;    border: 2px solid;    font-family: sans-serif;    text-transform: capitalize;    display: flex;    align-items: center;    justify-content: center;}

span 元素稍向右移:

nav li span {    transform: translateX(4px);}

用列表项 li 的左边框画出 1 条竖线:

nav li {    box-sizing: border-box;    border-left: 2px solid;}

用列表项的伪元素再画出 2 条竖线,它们的高度依次降低,至此,按钮左侧一共有 3 条竖线:

nav li {    position: relative;}nav li::before,nav li::after {    content: '';    position: absolute;    width: inherit;    border-left: 2px solid;    z-index: -1;}nav li::before {    height: 80%;    top: 10%;    left: -8px;}nav li::after {    height: 60%;    top: 20%;    left: -14px;}

将伪元素的 2 条竖线的颜色逐渐变暗,增加一点层次感:

nav li::before {    filter: brightness(0.8);}nav li::after {    filter: brightness(0.6);}

增加鼠标悬停效果,默认状态是按钮遮住 3 条竖线,当鼠标悬停时,按钮右移,露出 3 条竖线:

nav li:hover span {    transform: translateX(4px);}nav li span {    /* transform: translateX(4px); */    transform: translateX(-16px);    transition: 0.3s;}

因为按钮默认状态的位置是偏左的,为了抵销这个偏移量,让列表项稍向右移:

nav ul {    transform: translateX(16px);}

在 dom 中再增加几个按钮:

设置一下按钮的间距:

nav li {    margin-top: 0.8em;}

大功告成!

相关推荐:

如何用纯css画一个跳动心?(代码实例)

如何使用CSS和GSAP实现有多个关键帧的连续动画(附源码)

以上就是如何使用纯CSS实现悬停时右移的按钮效果(附源码)的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1611722.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 02:31:01
下一篇 2025年12月24日 02:31:11

相关推荐

  • 值得收藏的CSS实现水平垂直居中的10种方式总结

    本篇文章给大家带来的内容是关于值得收藏的css实现水平垂直居中的10种方式总结,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 划重点,这是一道面试必考题,很多面试官都喜欢问这个问题,我就被问过好几次了 要实现上图的效果看似很简单,实则暗藏玄机,本文总结了一下CSS实现水平垂直居中的…

    2025年12月24日
    000
  • css3-动画(animation)效果的实现

    本章给大家介绍css3-动画(animation)效果的实现,让大家了解一个简单的css3动画是如何实现的。有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 css3-动画(animation): 具有以下属性: 1、animation-name 自定义动画名称2、animation-…

    2025年12月24日
    000
  • ​CSS3如何实现字体抗锯齿渲染效果?-webkit-font-smoothing属性(实例)

    本章给大家介绍css3如何实现字体抗锯齿渲染效果?-webkit-font-smoothing属性(实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 对字体进行抗锯齿渲染可以使字体看起来会更清晰舒服。在图标字体成为一种趋势的今天,抗锯齿渲染使用也越来越多。 font-smoot…

    好文分享 2025年12月24日
    000
  • CSS3中的calc()是什么?calc()怎么使用呢?

    很多人都不知道calc()是什么,那今天就来学习calc(),学习之前我们有必要先知道calc()是什么?只有知道了他是个什么东西?在实际运用中才能更好的使用他。那接下来就围绕calc()展开。 calc()是什么? calc()从字面我们可以把他理解为一个函数function。其实calc是英文单…

    好文分享 2025年12月24日
    000
  • css3如何实现过渡动画的效果?css3过渡效果的实现方法

    有时候我们在网页中可能会看到这样的效果,当鼠标放到某些文字或图像上的时候会发生一些变化,这其实就是过渡,这么说来比较抽象,那么,下面就来介绍一下关于css3实现过渡的动画效果。 css3实现过渡是离不开transition属性的,transition是网页上的过渡动画,变化的逐渐过渡效果,简称过渡动…

    2025年12月24日
    000
  • css3如何设置边框颜色渐变?css3边框颜色渐变的两种实现方法

    很多时候在开发网页的时候,可能因为一些原因需要为边框设置颜色渐变,那么该如何设置颜色边框渐变?本篇文章将为大家介绍使用css3设置边框颜色渐变的方法。 我们设置边框颜色渐变时可以用到css3中的属性是border-image或者border-colorcss3边框颜色渐变,那么两个属性如何设置边框颜…

    2025年12月24日
    000
  • css3图片旋转如何实现?css3实现图片旋转动画效果的方法

    在网页中,我们经常可以看到一张图片在旋转,这样的图片旋转是怎么来实现的呢?本篇文章就来为你介绍一下关于css3实现图片旋转动画效果的方法。 实现css3中图片的旋转可以使用可以使用 -webkit-animation 和 @-webkit-keyframes 组合使用来完成。 -webkit-ani…

    好文分享 2025年12月24日
    000
  • CSS3中有哪些伪类选择器, 伪类选择器nth-child() 怎么使用

    css3中新的属性给我们带来了不少的便利,比如伪类选择器 nth-child(),但是它在ie6-8和ff3.0-浏览器不支持,css3中nth-of-type(n)(比如nth-of-type(1))这个特殊的类选择符可以设置更加个性的标题和段落等,不过,目前nth-of-type(n)只支持火狐…

    好文分享 2025年12月24日
    000
  • 如何使用CSS和GSAP实现有多个关键帧的连续动画(附源码)

    本篇文章给大家带来的内容是关于如何使用css和gsap实现有多个关键帧的连续动画(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定…

    2025年12月24日
    000
  • css3新特性有哪些?css3新特性的总结

    本篇文章给大家带来的内容是css3新特性有哪些?css3新特性的总结 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 什么是CSS? 层叠样式表(CSS)是一种向Web文档添加样式(例如,字体,颜色,间距)的简单机制。 什么是CSS3? CSS3是CSS语言的最新发展,旨在扩展CS…

    2025年12月24日
    000
  • 如何使用纯CSS实现一只会动的手(附源码)

    本篇文章给大家带来的内容是关于如何使用纯css实现一只会动的手(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom,容器中…

    2025年12月24日
    000
  • 深入理解CSS3中transition的使用方法

    可以让动画在css层面实现,此时不是利用setinterval(),不是定时器,而是底层c++在渲染,渲染动画的质量、丝滑程度都要远远优于js、jquery。 要颠覆我们传统制作网页动画的思维模式,现在的手机页面中,绝对不会有任何动画是setInterval()完成的,而都是过渡实现的。今后2~3年…

    好文分享 2025年12月24日
    000
  • 10个常用的CSS3知识分享

    随着时代的发展,前端知识也一直在更新,目的是让用户体验更好,工作效率变高。css3的出现,让我们可以通过简便的方式,做出更多炫酷的效果,工作中整理了10个常用的css3属性,欢迎参考。 1、文本效果 阴影:text-shadow:X偏移 Y偏移 模糊程度 阴影颜色; text-shadow: 5px…

    好文分享 2025年12月24日
    000
  • 如何使用css3实现魔方的动画效果(完整代码)

    本篇文章给大家带来的内容是关于如何使用css3实现魔方的动画效果(完整代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 Document *{ margin: 0; padding: 0; } .box{ width: 300px; height: 300px; margin:…

    好文分享 2025年12月24日
    000
  • 如何使用纯CSS实现一把剪刀的效果(附源码)

    本篇文章给大家带来的内容是关于如何使用纯css实现一把剪刀的效果(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom,容器…

    2025年12月24日
    000
  • 如何使用CSS在线字体和D3实现Google的信息图

    本篇文章给大家带来的内容是如何使用css在线字体和d3实现google的信息图 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom…

    2025年12月24日
    000
  • CSS3中​linear-gradient属性的使用方法总结

    本篇文章给大家带来的内容是关于css3中linear-gradient属性的使用方法总结,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 linear-gradient 是CSS3中一个重要的属性,初看觉得很简单,但是别看它简单,它能实现很多复杂的图形。 代码还是比较简单的: lin…

    2025年12月24日
    000
  • css3中什么是多列布局?columns属性的介绍(实例)

    本章给大家带来css3中什么是多列布局?columns属性的介绍(实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 一、什么是多列布局? CSS3中新出现的多列布局(multi-column)是传统HTML网页中块状布局模式的有力扩充。这种新语法能够让WEB开发人员轻松的让文本…

    2025年12月24日 好文分享
    000
  • css自定义属性和聚光灯效果的实现(代码)

    本篇文章给大家带来的内容是关于css自定义属性和聚光灯效果的实现(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 简介 CSS Variables,一个并不是那么新的东西,但对css来说绝对是一场革命。 之前使用变量的时候,需要借助sass、less等预处理工具来实现,现在我…

    2025年12月24日 好文分享
    000
  • 什么是css选择器?css3中5种常见的基本选择器(代码实例)

    本章我们给大家讲解一下什么是css选择器?css3中5种常见的基本选择器。有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 一:什么是css选择器? CSS是一种用于屏幕上渲染html,xml等一种语言,CSS主要是在相应的元素中应用样式,来渲染相对应用的元素,那么这样我们选择相应的元…

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信