32.纯 CSS 创作六边形按钮特效

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

感想:简简单单的动画特效,位置,动画。

HTML代码:

<nav>
    <ul>
        <li>Home</li>
        <li>Products</li>
        <li>Services</li>
        <li>Contact</li>
    </ul>
</nav>
<nav>
    <ul>
        <li>Home</li>
        <li>Products</li>
        <li>Services</li>
        <li>Contact</li>
    </ul>
</nav>
<nav>
    <ul>
        <li>Home</li>
        <li>Products</li>
        <li>Services</li>
        <li>Contact</li>
    </ul>
</nav>

CSS代码:

html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
nav{
    --h: 3em;
}
nav:nth-child(1){
    --rate: 1.5;
    --bgcolor: black;
}
nav:nth-child(2){
    --rate: 1.732;
    --bgcolor: brown;
}
nav:nth-child(3){
    --rate: 2;
    --bgcolor: green;
}
nav ul{
    padding: 0;
}
nav ul li{
    position: relative;
    list-style-type: none;
    width: calc(var(--h) * var(--rate));
    height: var(--h);
    line-height: var(--h);
    margin: 2em;
    background-color: var(--bgcolor);
    color: white;
    font-family: sans-serif;
    text-align: center;
}
/* 用伪元素增加2个倾斜的矩形 */
nav ul li::before,
nav ul li::after{
    position: absolute;
    top: 0;
    left: 0;
    content: ‘‘;
    /* inherit : 继承 */
    width: inherit;
    height: inherit;
    background-color: var(--bgcolor);
    z-index: -1;
    filter: opacity(0);
    transition: 0.3s;
}
nav ul li::before{
    /* 角度 位置 */
    transform: rotate(60deg) translateX(calc(var(--h) * -2));
}
nav ul li::after{
    transform: rotate(-60deg) translateX(calc(var(--h) * 2));
}
nav ul li:hover::before{
    filter: opacity(1);
    transform: rotate(60deg) translateX(0);
}
nav ul li:hover::after{
    filter: opacity(1);
    transform: rotate(-60deg) translateX(0);
}

原文地址:https://www.cnblogs.com/FlyingLiao/p/10340137.html

时间: 2024-10-06 21:11:28

32.纯 CSS 创作六边形按钮特效的相关文章

如何用纯 CSS 创作六边形按钮特效

效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/xjoOeM 可交互视频教程 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码. 请用 chrome, safari, edge 打开观看. https://scrimba.com/c/cQ74NAJ 源代码下载 本地下载 每日前端实战系列的全部源代码请从 github 下载: https://github.com/comeh

前端每日实战:147# 视频演示如何用纯 CSS 创作透视按钮的悬停特效

效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/qJEdKb 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码. 请用 chrome, safari, edge 打开观看. https://scrimba.com/p/pEgDAM/cEJRKud 源代码下载 每日前端实战系列的全部源代码请从 github 下载: https://github.com/comehope/f

如何用纯 CSS 创作阶梯文字特效

效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/MXYBEM 可交互视频教程 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码. 请用 chrome, safari, edge 打开观看. https://scrimba.com/p/pEgDAM/cEQMJAK 源代码下载 本地下载 每日前端实战系列的全部源代码请从 github 下载: https://github.co

21纯 CSS 创作文本滑动特效的 UI 界面

原文地址:https://segmentfault.com/a/1190000014842868 简化版地址:https://scrimba.com/c/cgaZLh6 感想:笨蛋,想不出自己的东西... HTML代码: <!DOCTYPE HTML> <html> <head> <link rel="stylesheet" href="index.css"> </head> <body> &l

38.纯 CSS 创作阶梯文字特效

原文地址:https://segmentfault.com/a/1190000015107942 HTML code: <div class="container"> <p> <span>stay</span> <span>hungry</span> </p> <p> <span>hungry</span> <span>stay</span>

前端每日实战:38# 视频演示如何用纯 CSS 创作阶梯文字特效

效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/MXYBEM 可交互视频教程 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码. 请用 chrome, safari, edge 打开观看. https://scrimba.com/p/pEgDAM/cEQMJAK 源代码下载 每日前端实战系列的全部源代码请从 github 下载: https://github.com/comehope

前端每日实战:2.纯 CSS 创作一个矩形旋转 loader 特效

原文地址:2.纯 CSS 创作一个矩形旋转 loader 特效 扩展后地址:https://scrimba.com/c/cNJVWUR  扩展地址:https://codepen.io/pen/ HTML代码: <div class="loader"> <span></span> <span></span> <span></span> </div> CSS代码: /* 居中显示 */ htm

前端每日实战3.纯 CSS 创作一个容器厚条纹边框特效

原文地址:3.纯 CSS 创作一个容器厚条纹边框特效 没有啥好点子呀,不爽 HTML代码: <div class="box"> <div class="content"> <h2>What is Lorem Ipsum?</h2> <p>Mauris volutpat risus quis nisi tempus hendrerit. Nullam nisi urna, suscipit quis risu

纯CSS实现六边形布局的导航菜单

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>纯CSS实现六边形布局的导航菜单</title> <style> .wrap{margin:100px;width:303px;} .nav{width:100px;hei