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

HTML代码:

  1. <nav>
  2. <ul>
  3. <li><span>Home</span></li>
  4. </ul>
  5. </nav>

CSS代码:

  1. html, body {
  2. margin:;
  3. padding:;
  4. width: 100%;
  5. height: 100%;
  6. display: flex;
  7. justify-content: center;
  8. align-items: center;
  9. background: linear-gradient(to right bottom,gold, chocolate);
  10. }
  11. /* 为容器设置宽高,此处定义的变量 x 和 y 后面还会用到 */
  12. :root{
  13. --x: 5em;
  14. --y: 1.5em;
  15. }
  16. nav ul{
  17. padding:;
  18. }
  19. nav ul li{
  20. position: relative;
  21. width: var(--x);
  22. height: var(--y);
  23. line-height: var(--y);
  24. list-style-type: none;
  25. font-size: 40px;
  26. text-align: center;
  27. font-family: sans-serif;
  28. background-color: white;
  29. border: 2px solid black;
  30. overflow: hidden;
  31. }
  32. /* 用伪元素画出一个小球,放到菜单项左端 */
  33. nav ul li::before {
  34. content: '';
  35. position: absolute;
  36. height: var(--y);
  37. width: var(--y);
  38. background-color: black;
  39. border-radius: 50%;
  40. top:;
  41. left: calc(-1 * var(--y) / 2);
  42. transition: 0.5s ease-out;
  43. }
  44. /* 用 mix-blend-mode 设置色彩混合模式,使小球覆盖的文字反色显示 */
  45. nav ul li span{
  46. color: white;
  47. mix-blend-mode: difference;
  48. }
  49. /* 增加动画,使小球从左侧滚到右侧 */
  50. nav ul li:hover::before {
  51. --r: calc(var(--x) * 1.2);
  52. height: var(--r);
  53. width: var(--r);
  54. /* 利用圆的变大覆盖长方形,可以将li中 overflow: hidden; 注释查看 */
  55. top: calc(-1 * var(--r) / 2 + var(--y) / 2);
  56. left: calc(-1 * var(--r) / 2 + var(--x) / 2);
  57. }

23.纯 CSS 创作一个菜单反色填充特效的更多相关文章

  1. 23.1纯 CSS 创作一个菜单反色填充特效

    交互效果地址:https://scrimba.com/c/cEwREJs6 HTML代码: <nav> <ul> <li><span>Home</ ...

  2. 前端每日实战:23# 视频演示如何用纯 CSS 创作一个菜单反色填充特效

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

  3. 如何用纯 CSS 创作一个菜单反色填充特效

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

  4. 3.纯 CSS 创作一个容器厚条纹边框特效

    原文地址:3.纯 CSS 创作一个容器厚条纹边框特效 没有啥好点子呀,不爽 HTML代码: <div class="box"> <div class=" ...

  5. 如何用纯 CSS 创作一个同心圆弧旋转 loader 特效

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

  6. 如何用纯 CSS 创作一个金属光泽 3D 按钮特效

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

  7. 如何用纯 CSS 创作一个容器厚条纹边框特效

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

  8. 前端每日实战:4# 视频演示如何用纯 CSS 创作一个金属光泽 3D 按钮特效

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

  9. 前端每日实战:10# 视频演示如何用纯 CSS 创作一个同心圆弧旋转 loader 特效

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

随机推荐

  1. Delphi调用DLL中的接口

    问题描述: 具体问题就是在隐式使用接口变量后,在FreeLibrary执行后,就会出现一个非法访址的错误. 这个错误的原因就是在FreeLibrary后,DLL以的代码均为不可用状态,而在代码执行完整 ...

  2. linux 查看系统磁盘、内存大小

    1.磁盘 df -h cat /proc/partitions 2.内存 cat /proc/meminfo cat /proc/meminfo

  3. Java Collection - 003 高效的找出两个List中的不同元素

    如题:有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样取出两个集合中不同的元素? 方法1:遍历两个集合 public ...

  4. ios的并发队列控制库

    QSDispatchQueue,在这里

  5. 【分布式session】Spring-session的使用

    概述 Session用于保存用户信息,通常一个Session保存一个用户信息,在以Tomcat为Servlet Container的web应用中,用户信息都保存在HttpSession中: 当用户发起 ...

  6. PAT 乙级 1067 试密码(20 分)

    1067 试密码(20 分) 当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死.本题就请你实现这个小功能. 输入格式: 输入在第一行给出一个密码(长度 ...

  7. MyBatis 多表查询

    1.多表设计 多表查询 a.多表设计 (1)一对一 在任意一方设计外键保存另一张表的主键,维系表和表的关系 (2)一对多 在多的一方设计外键保存一的一方的主键,维系表和表的关系 (3)多对多 设计一张 ...

  8. Java学习——Applet写字符串(调字体)

    import java.awt.*; import java.applet.Applet; public class GUI2 extends Applet{ public void paint(Gr ...

  9. 学习-工作:GTD

    ylbtech-学习-工作:GTD GTD就是Getting Things Done的缩写,翻译过来就是“把事情做完”,是一个管理时间的方法.GTD的核心理念概括就是必须记录下来要做的事,然后整理安排 ...

  10. Centos 6.5(64位) vim 8.0 安装

    转自:https://blog.csdn.net/sdoyuxuan/article/details/78825912 1 先得安装nurses库 yum list | grep "ncur ...