首页 > 其他分享 >用css写一个奥运五环

用css写一个奥运五环

时间:2022-12-26 13:12:41浏览次数:39  
标签:olympic -- 五环 color var ring border 奥运 css

title: 用css写一个奥运五环
description: 用css写一个奥运五环
tags:
  - css
date: 2022-12-23 14:00

目录

效果

奥运五环

代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>奥运五环</title>
  <style>
    :root {
      --olympic-blue: #006BB0;
      --olympic-yellow: #EFA90D;
      --olympic-black: #1D1815;
      --olympic-green: #059341;
      --olympic-rad: #DC2F1F;
      --size: 30vw;
      --thickness: 3vw;
    }

    /* 布局 */
    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }
    body {
      min-height: 100vh;
      /* min-width: calc(var(--size) * 5); */
      display: flex;
      justify-content: center;
      align-items: center;
      /* background-color: #ccc; */
    }
    .olympic {
      width: calc(var(--size) * 3.5);
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      justify-content: center;
      align-items: center;
    }
    .olympic .ring {
      position: relative;
      margin-right: calc(var(--size) * 0.06);
      width: var(--size);
      height: var(--size);
      border: var(--thickness) solid #ddd;
      border-radius: 50%;
    }
    .olympic .ring:nth-child(n + 4) {
      /* transform: translateY(calc(var(--size) * -0.5)); */
      top: calc(var(--size) * -0.5);
    }

    /* 上色 */
    .olympic .ring:nth-child(1) {
      border-color: var(--olympic-blue);
    }
    .olympic .ring:nth-child(2) {
      border-color: var(--olympic-black);
    }
    .olympic .ring:nth-child(3) {
      border-color: var(--olympic-rad);
    }
    .olympic .ring:nth-child(4) {
      border-color: var(--olympic-yellow);
    }
    .olympic .ring:nth-child(5) {
      border-color: var(--olympic-green);
    }

    /* 层叠 */
    .olympic .ring:nth-child(n)::before {
      content: "";
      position: absolute;
      z-index: 10;
      inset: calc(var(--thickness) * -1);
      border: var(--thickness) solid transparent;
      border-radius: 50%;
    }
    .olympic .ring:nth-child(1)::before {
      border-right-color: var(--olympic-blue);
    }
    .olympic .ring:nth-child(2)::before {
      border-right-color: var(--olympic-black);
      border-bottom-color: var(--olympic-black);
    }
    .olympic .ring:nth-child(3)::before {
      border-bottom-color: var(--olympic-rad);
    }
    .olympic .ring:nth-child(5)::before {
      border-left-color: var(--olympic-green);
    }
  </style>
</head>
<body>
  <div class="olympic">
    <div class="ring"></div>
    <div class="ring"></div>
    <div class="ring"></div>
    <div class="ring"></div>
    <div class="ring"></div>
  </div>
</body>
</html>

标签:olympic,--,五环,color,var,ring,border,奥运,css
From: https://www.cnblogs.com/liam220818/p/17005565.html

相关文章

  • 如何优雅的写 css 代码
    CSS(全称CascadingStyleSheets,层叠样式表)为开发人员提供声明式的样式语言,是前端必备的技能之一,基于互联网上全面的资料和简单易懂的语法,CSS非常易于学习,但其知识点广泛且......
  • CSS画一个三角形
    前言在前端开发的时候,我们有时候会需要用到一个三角形的形状,比如地址选择或者播放器里面播放按钮。通常情况下,我们会使用图片或者svg去完成三角形效果图,但如果单纯使用css......
  • 8款web设计的CSS 工具
    当涉及到简化 css 设计和开发相关的工作时,工具总能创造奇迹。值得指出的是,绝大多数的网页设计者和开发人员对不同的 css 工具都感到兴奋,这些工具能帮助他们更快的制作功......
  • CSS Flex 布局的 flex-direction 属性讲解
    flex-direction设置了主轴,从而定义了弹性项目放置在弹性容器中的方向。Flexbox是一种单向布局概念,可将弹性项目视为主要以水平行或垂直列布局。.container{flex-d......
  • CSS Flex 布局的引入背景
    Flexbox布局(FlexibleBox)模块(截至2017年10月的W3C候选推荐)旨在提供一种更有效的方式来布局、对齐和分配容器中item元素之间的空间,即使它们的大小未知和/或动态,这......
  • 8种纯CSS实现的炫酷HOVER效果,你应该在网站中尝试使用
    英文| https://www.blog.duomly.com/html-button-hover-effects/作者| AnnaDanilec翻译|web前端开发按钮悬停效果简介​按钮是每个页面,Web应用程序或移动应用程序中......
  • 【开发小技巧】031—用CSS3如何实现钟摆动画的导航栏菜单效果
    编辑|web前端开发(web_qdkf)我们都知道,CSS3可以实现很多很酷的动画效果,而今天我们将与大家分享一期用CSS3制作的钟摆动画菜单效果,在这个动画中,我们主要采用CSS3来控制SVG图......
  • 【开发小技巧】030—用HTML与CSS如何实现可悬停的侧面导航效果?
    编辑|web前端开发(ID:web_qdkf)今天,我们将与大家分享一种带图标的可悬停侧边导航栏的制作方法,主要用到的还是HTML和CSS。想要实现在导航栏上附加图标,这个实现的方式有很多......
  • 多层嵌套的CSS 3D动画技术详解
    CSS动画是当前一种非常火爆的技术,我说的并不是一些简单的颜色变换或长短属性变换,我说的是3D变换技术;纯CSS实现的翻滚旋转立方体就是最典型的例子。网上能找到很多关于CSS动......
  • CSS Flex 布局的 flex-direction 属性讲解
    本文介绍VariantManagement控件的页面变体,它是SmartVariantManagement控件的增强功能,可以处理多个智能控件。基本上,VariantManagement控件的分页版本与(非分页)Variant......