专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

css虚线边框怎么设置,css虚线边框代码

来源:小易整编  作者:小易  发布时间:2023-01-12 03:51
摘要:css虚线边框怎么设置,css虚线边框代码。提起虚线框动画,可能大家会优先想到使用svg的方式。01方法一,linear-gradient方式 动画效果:代码:.demo width:300px margin:0auto pad...

css虚线边框怎么设置,css虚线边框代码。提起虚线框动画,可能大家会优先想到使用svg的方式。

css虚线边框怎么设置,css虚线边框代码

01

方法一,linear-gradient方式 

动画效果:

css虚线边框怎么设置,css虚线边框代码

代码:

<style>.demo {    width: 300px;    margin: 0 auto;    padding: 1px;    animation: move .5s infinite;    background-size: 10px 10px;    background-position: 0 0, 5px 5px;    background-image:         linear-gradient(45deg, #666 25%, transparent 25%, transparent 75%, #666 75%, #666),         linear-gradient(45deg, #666 25%, transparent 25%, transparent 75%, #666 75%, #666);}@keyframes move {    50% {        background-image:         linear-gradient(135deg, #666 25%, transparent 25%, transparent 75%, #666 75%, #666),         linear-gradient(135deg, #666 25%, transparent 25%, transparent 75%, #666 75%, #666);    }    100% {        background-image:         linear-gradient(45deg, #666 25%, transparent 25%, transparent 75%, #666 75%, #666),         linear-gradient(45deg, #666 25%, transparent 25%, transparent 75%, #666 75%, #666);    }}.demo .content {    background-color: #fff;    padding: 20px;}</style><div class="demo">    <div class="content">前端妙音坊(公众号)</div></div>

原理:

利用background的 linear-gradient 线性渐变,实现黑白色块的棋盘,然后让黑白交替变化,从而产生动画效果。

css虚线边框怎么设置,css虚线边框代码

然后,在外层div设置padding: 1px,内层div设置背景色为白色以盖住棋盘背景。
需要注意的是,如果虚线框为1px是没有问题的,如果需要为2px,则只需要把外层的padding设置为2px即可,但是可能会导致刚好显示在色块的交界处,所以需要控制好宽高的数值。

02

方法二,offset path方式 

模拟一个容器的上下左右四条虚线样式的边,并让其以相同的速度运动,这样也会达到效果。
这里我使用了css的 offset path 与 offset-distance 来实现运动的效果。
动画效果:

css虚线边框怎么设置,css虚线边框代码

代码:

<style>.holder {    width:100px;    height:100px;    padding: 2px;    overflow: hidden;    margin: 0 auto;    position: relative;}.holder p {    font-size: 13px;    text-align: center;}.border-top {    width: 200px;    height: 0px;    overflow: hidden;    border-top: 2px dashed blue;    offset: path('M 0 0 L 100 0');    animation: move 4s linear infinite;    position: absolute;    left: 0;    top: 1px;}.border-right {    width: 0px;    height: 200px;    overflow: hidden;    border-left: 2px dashed blue;    offset: path("M 0 0 L 0 100") auto;    animation: move 4s linear infinite;    transform: rotate(90deg);    position: absolute;    right: -1px;    top: 0;}.border-bottom {    width: 200px;    height: 0px;    overflow: hidden;    border-top: 2px dashed blue;    offset: path('M 100 0 L 0 0') auto;    animation: move 4s linear infinite;    position: absolute;    left: 0;    bottom: -1px;}.border-left {    width: 0px;    height: 200px;    overflow: hidden;    border-left: 2px dashed blue;    offset: path("M 0 100 L 0 0") auto;    animation: move 4s linear infinite;    position: absolute;    left: 1px;    top: 0;    transform: rotate(90deg);}@keyframes move {    from {        offset-distance: 0%;    }    to {        offset-distance: 100%;    }}</style> <div class="holder">    <p>前端妙间坊<br>(公众号)</p>    <div class="border-top"></div>    <div class="border-right"></div>    <div class="border-bottom"></div>    <div class="border-left"></div></div>

不过,此方法稍显复杂,并且需要根据边的长度控制好animation的时间,否则各个边的运行速度会不一致,另外,还需要调整好 path("M 0 100 L 0 0") 的值。

上面的虚线使用的是border方式,如果不想使用默认的虚线样式,也可以使用background 线性渐变方式来达到虚线效果。

03

方法三,位移方式 

在方法二里面,我是通过让4条边各自沿path进行运动的,那么不使用path,而使用位移,是不是也可以呢?稍微修改一下方法二的代码

css虚线边框怎么设置,css虚线边框代码

代码:

<style>.holder {    width:100px;    height:100px;    padding: 2px;    overflow: hidden;    margin: 0 auto;    position: relative;}.holder p {    font-size: 13px;    text-align: center;}.border-top {    width: 200px;    height: 0px;    overflow: hidden;    border-top: 2px dashed blue;    animation: moveRight 2s linear infinite;    position: absolute;    left: 0;    top: 0;}.border-right {    width: 0px;    height: 200px;    overflow: hidden;    border-left: 2px dashed blue;    animation: moveBottom 2s linear infinite;    position: absolute;    right: 0;    top: 0;}.border-bottom {    width: 200px;    height: 0px;    overflow: hidden;    border-top: 2px dashed blue;    animation: moveLeft 2s linear infinite;    position: absolute;    left: 0;    bottom: 0;}.border-left {    width: 0px;    height: 200px;    overflow: hidden;    border-left: 2px dashed blue;    animation: moveUp 2s linear infinite;    position: absolute;    left: 0;    top: 0;}@keyframes moveRight {    from {        left: -100%;    }    to {        left: 0%;    }}@keyframes moveBottom {    from {        top: -100%;    }    to {        top: 0%;    }}@keyframes moveLeft {    from {        left: 0%;    }    to {        left: -100%;    }}@keyframes moveUp {    from {        top: 0%;    }    to {        top: -100%;    }}</style> <div class="holder">    <p>前端妙音坊<br>(公众号)</p>    <div class="border-top"></div>    <div class="border-right"></div>    <div class="border-bottom"></div>    <div class="border-left"></div></div>


本文地址:百科问答频道 https://www.neebe.cn/wenda/903002.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • css布局技巧,css常见布局汇总

    css布局技巧,css常见布局汇总

    css布局技巧,css常见布局汇总要点速看网页开发基本思路:确定版心--》分析行模块--》分析列模块;如果一行当中有多个模块,一定要放在同一个父模块中;列模块首先可以先给宽高背景颜色,实例化盒子;常见布局:两栏/三栏/等高/粘带推荐flex...

  • css选择器有哪些,css选择器怎么用

    css选择器有哪些,css选择器怎么用

    css选择器有哪些,css选择器怎么用 CSS选择器又被称为CSS样式属性、CSS属性选择器,CSS中的“选择器”指明了“{}”中的“样式”的作用对象,也就是“样式”作用于网页中的哪些元素;常用选择器可分为标签名选择器、类选择器、id选择器...

  • CSS图片透明度怎么设置,CSS 透明度设置方法

    CSS图片透明度怎么设置,CSS 透明度设置方法

    CSS图片透明度怎么设置,CSS透明度设置方法怎样在CSS样式中设置背景的透明度怎样在CSS样式中设置背景的透明度,下面给出一个具体的实例。把类为box的层设为透明。 透明度设置 html...

  • css教程,0基础入门css教程

    css教程,0基础入门css教程

    通过使用CSS我们可以大大提升网页开发的工作效率!在我们的CSS教程中,您会学到如何使用CSS同时控制多重网页的样式和布局。1.CSS简介CSS是一种定义样式结构如字体、颜色、位置等的语言,被用于描述网页上的信息格式化和显示的方式。CSS样...

  • csshover怎么用,csshover用法教程

    csshover怎么用,csshover用法教程

    csshover怎么用,csshover用法教程1.实现效果在这里插入图片描述2.实现步骤定义一个宽高为300px的父容器.box{position:relative;width:300px;height:300px;}父容器中添加...

  • css样式表有哪几种,css样式表介绍

    css样式表有哪几种,css样式表介绍

    css样式表有哪几种,css样式表介绍层叠样式表(英文全称:CascadingStyleSheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰...

  • css3渐变属性,css3渐变教程

    css3渐变属性,css3渐变教程

    css3渐变属性,css3渐变教程好程序员web前端教程之CSS3渐变,CSS3渐变(gradient)可以让你在两个或多个指定的颜色之间显示平稳的过渡。以前,你必须使用图像来实现这些效果,现在通过使用CSS3的渐变(gradients)即...

  • 如何设置滚动条样式,CSS设置自定义滚动条样式

    如何设置滚动条样式,CSS设置自定义滚动条样式

    如何设置滚动条样式,CSS设置自定义滚动条样式你见过自定义滚动条样式的网站吗?是不是很想知道它们是怎么实现的?读完这篇文章,你会了解到使用CSS自定义滚动条样式的所有知识。在本教程中,你将:-学习能用来自定义滚动条样式的原生CSS属性-使用...

  • 周排行
  • 月排行
  • 年排行

精彩推荐