原文地址:https://segmentfault.com/a/1190000014836748

感想: 把原元素隐藏,利用伪元素::before 和 ::after 各取上下一半 clip-path 切割图片

HTML代码:

<ul class="menu">
<li data-text="New Game">New Game</li>
<li data-text="Load Game">Load Game</li>
<li data-text="Options">Options</li>
<li data-text="Exit">Exit</li>
</ul>

CSS代码:

html,
body {
margin:;
padding:;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
background-color: black;
}
.menu li {
position: relative;
list-style-type: none;
color: transparent;
font-size: 3em;
text-transform: uppercase;
text-align: center;
line-height: 1em;
width: 7em;
margin: 0.5em;
/* 画出文字的分割线 */
border-top: 1px solid transparent;
transition: 0.3s;
}
.menu li:hover{
border-top: 1px solid yellow;
}
/* 用伪元素添加文本 */
.menu li::before,
.menu li::after{
position: absolute;
/* 插入元素的属性值 */
content: attr(data-text);
top:;
left:;
width: 100%;
color: silver;
}
/* 把伪元素文本向上移,竖跨分割线 */
.menu li::before,
.menu li::after {
top: -0.5em;
transition: 0.3 ease-out;
}
/* 用遮罩切出分割线上下二部分的文本 */
.menu li::before{
clip-path: polygon(0 0, 100% 0, 100% 50%, 0 50%);
}
.menu li::after{
clip-path: polygon(0 50%, 100% 50%, 100% 100%, 0 100%);
}
.menu li:hover::before,
.menu li:hover::after{
color: yellow;
transition: left 0.3s ease-out;
transition-delay: 0.2s;
}
.menu li:nth-child(odd):hover::before,
.menu li:nth-child(even):hover::after{
left: -0.15em;
}
.menu li:nth-child(even):hover::before,
.menu li:nth-child(odd):hover::after{
left: 0.15em;
}

19.纯 CSS 创作一种有削铁如泥感觉的菜单导航特效的更多相关文章

  1. 前端每日实战:19# 视频演示如何用纯 CSS 创作一种有削铁如泥感觉的菜单导航特效

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/XqYroe 可交互视频教程 此视频 ...

  2. 如何用纯 CSS 创作一种有削铁如泥感觉的菜单导航特效

    效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/XqYroe 可交互视频教 ...

  3. 14.纯 CSS 创作一种侧立图书的特效

    原文地址:https://segmentfault.com/a/1190000014751037 HTML代码: <div class="books"> <div ...

  4. 12纯 CSS 创作一种文字断开的交互特效

    原文地址:https://segmentfault.com/a/1190000014719591 总结:三部分组成,原文透明,左右都与原文重叠(绝对定位),但左右各取相应一部分. HTML代码: &l ...

  5. 9.纯 CSS 创作一种按钮被瞄准的交互特效

    原文地址:https://segmentfault.com/a/1190000014680999 吃鸡倍镜,哈哈哈 HTML代码: <div class="box"> ...

  6. 如何用纯 CSS 创作一种侧立图书的特效

    效果预览 在线演示 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/pen/deVgRM 可交互视频教程 此视 ...

  7. 如何用纯 CSS 创作一种文字断开的交互特效

    效果预览 在线演示 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/pen/LmjNgL 可交互视频教程 此视 ...

  8. 如何用纯 CSS 创作一种按钮被瞄准的交互特效

    效果预览 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. 在线演示 https://codepen.io/zhang-ou/pen/ELWMLr 可交互视频教程 此视 ...

  9. 前端每日实战:12# 视频演示如何用纯 CSS 创作一种文字断开的交互特效

    效果预览 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/pen/LmjNgL 可交互视频教程 此视频是可以交 ...

随机推荐

  1. [视频播放] M3U8文件格式说明

    M3U文件中可以包含多个tag,每个tag的功能和属性如下: #EXTM3U 每个M3U文件第一行必须是这个tag,请标示作用 #EXT-X-MEDIA-SEQUENCE:140651513 每一个m ...

  2. 黄聪:PHP代码获取客户端IP地址经纬度及所在城市

    echo $_SERVER['HTTP_HOST']; //echo $_SERVER['REQUEST_URI']; $getIp=$_SERVER["REMOTE_ADDR"] ...

  3. 卡尔曼滤波器实例:跟踪自由落体运动:设计与Matlab实现

    [首发:cnblogs    作者:byeyear    Email:byeyear@hotmail.com] 本文所用实例来自于以下书籍: Fundamentals of Kalman Filter ...

  4. 详细记录sql运行时间(精确到毫秒)

    写程序的人,往往需要分析所写的SQL语句是否已经优化过了,服务器的响应时间有多快,这个时候就需要用到SQL的STATISTICS状态值来查看了. 通过设置STATISTICS我们可以查看执行SQL时的 ...

  5. vue聊天功能之滚动条自动定位到底部

    一.问题描述 首次进入聊天窗口,数据加载之后先显示最早消息,后显示最新消息,也就是数据加载完之后,延迟了一个时间滚动条才自动定位到最底部. 二.解决方案 如果数据在刚好加载完的时候滚动条就定位到了最底 ...

  6. 学习笔记之Python Crash Course

    Python Crash Course https://www.safaribooksonline.com/library/view/python-crash-course/9781457197185 ...

  7. [转][C#]Web.config 相关配置

    设置默认首页 <?xml version="1.0" encoding="UTF-8"?> <configuration> <sy ...

  8. Scrapy学习篇(四)之数据存储

    上一篇中,我们简单的实现了toscrapy网页信息的爬取,并存储到mongo,本篇文章信息看看数据的存储.这一篇主要是实现信息的存储,我们以将信息保存到文件和mongo数据库为例,学习数据的存储,依然 ...

  9. Tom与Jerry谁先死?

    有如下问题:Tom的攻击力为113,血量为688,Jerry的攻击力为112,血量为691.每一个回合他们各攻击对方一次,请问谁先死? 这是一个简单的“人狗大战问题”,我们只要利用类的继承,在原有的基 ...

  10. VMware上centos系统忘记账号和密码解决

    转载: https://blog.csdn.net/wyx_wyl/article/details/78246907 我们有时会忘记虚拟机上的登陆密码,今天来说一下怎样修改我们的密码.应该对大多数的l ...