广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >如何使用纯css实现动态边框
  • 640
分享到

如何使用纯css实现动态边框

2024-04-02 19:04:59 640人浏览 独家记忆
摘要

小编给大家分享一下如何使用纯CSS实现动态边框,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   css3 Backgroun

小编给大家分享一下如何使用纯CSS实现动态边框,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

  css3 Background

  CSS3对于 background 做了一些修改,最明显的一个就是采用设置多背景,不但添加了4个新属性,并且还对目前的属性进行了调整增强。

  1、 多个背景图片

  在CSS3里面,你可以在一个标签元素里应用多个背景图片。代码类似与CSS2.0版本的写法,但引用图片之间需用“,”逗号隔开。第一个图片是定位在元素最上面的背景,后面的背景图片依次在它下面显示,如下:

  background-image: url(image1.jpg), url(image2.jpg), url(image3.jpg);

  2、新属性:Background Clip

  background-clip 顾名思义,背景剪切,用来设置元素的背景(背景图片或颜色)是否延伸到边框下面。

  background-clip: border-box; 背景延伸至边框外沿(但是在边框下层)

  background-clip: padding-box; 背景延伸至内边距(padding)外沿。不会绘制到边框处

  background-clip: content-box; 背景被裁剪至内容区(content box)外沿

  background-clip: text; 背景被裁剪成文字的前景色(实验属性,需要加浏览器前缀)

  3、新属性: Background Origin

  此属性需要与 background-position 配合使用。你可以用 background-position 计算定位是从border,padding或content boxes内容区域算起。(类似 background-clip )

  注意:当使用 background-attachment 为fixed时,该属性将被忽略不起作用。

  background-origin:border-box; 从border边框位置算起

  background-origin:padding-box; 从padding位置算起

  background-origin:content-box; 从content-box内容区域位置算起;

  4、新属性:Background Size

  Background Size属性用来设置背景图片的大小。有几个属性值:

  background-size: contain;缩小背景图片使其适应标签元素(主要是像素方面的比率)

  background-size: cover;让背景图片放大延伸到整个标签元素大小(主要是像素方面的比率)

  background-size: 100px 100px;标明背景图片缩放的尺寸大小

  background-size: 50% 100%;百分比是根据内容标签元素大小,来缩放图片的尺寸大小

  5、Background Repeat 调整

  CSS2里当设置背景的时候,它经常被标签元素截取而显示不全,CSS3介绍了2个新属性来修复此问题。

  background-repeat: space; 图片以相同的间距平铺且填充整个标签元素

  background-repeat: round; 图片自动缩放直到适应且填充整个标签元素

  6、Background Attachment 的调整

  Background Attachment有了一个新属性值: local ,当标签元素滚动时它才有效(如设置 overflow: scroll; ),当 background-attachment 设置为 scroll 时,背景图片是不随内容滚条滚动的。现在,有了 background-attachment: local ,就可以做到让背景随元素内容滚动而滚动了。

  7、新增 Background Blend Mode背景的混合模式是当背景重叠时计算像素最终色值的方法,每种混合模式采用前景和背景颜色值(分别为顶部颜色和底部颜色),执行其计算并返回颜色值。最终的可见层是对混合层中的每个重叠像素执行混合模式计算的结果。 background-blend-mode: nORMal | multiply | screen | overlay | darken | lighten | color-dodge | color-burn | hard-light | soft-light | difference | exclusion | hue | saturation | color | luminosity;

  CSS3 多背景模拟元素边框

  我们这里主要使用了 background-img 、 background-size 和 background-position 三个属性。

  background-image: [background-image], [background-image], [background-image];

  background-position: [background-position], [background-position], [background-position];

  background-repeat: [background-repeat], [background-repeat], [background-repeat];

  简写形式如下:

  background: [background-image] [background-position] [background-repeat],

  [background-image] [background-position] [background-repeat],

  [background-image] [background-position] [background-repeat];

  现在我们用多背景来模拟一个元素的边框

  。exammple {

  background: linear-gradient(0, #108b96 2px, #108b96 2px) no-repeat,

  linear-gradient(-90deg, #108b96 2px, #108b96 2px) no-repeat,

  linear-gradient(-180deg, #108b96 2px, #108b96 2px) no-repeat,

  linear-gradient(-270deg, #108b96 2px, #108b96 2px) no-repeat;

  background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;

  background-position: left top, right top, right bottom, left bottom;

  }

  我们用四个渐变的背景来模拟四个边框(为什么我们要用渐变而不是直接的Color呢?这是由于CSS的多背景只能是 background-image , background-color 不支持多个值,所有即便是纯色的边框,我们也只能使用渐变)。

  初步效果

  接下来我们让边框动起来

  。exammple {

  transition: ease-in .3s;

  background: linear-gradient(0, #108b96 2px, #108b96 2px) no-repeat,

  linear-gradient(-90deg, #108b96 2px, #108b96 2px) no-repeat,

  linear-gradient(-180deg, #108b96 2px, #108b96 2px) no-repeat,

  linear-gradient(-270deg, #108b96 2px, #108b96 2px) no-repeat;

  background-size: 0 2px, 2px 0, 0 2px, 2px 0;

  background-position: left top, right top, right bottom, left bottom;

  }

  。exammple:hover {

  background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;

  }

  现在我们已经按要求实现了交互效果。

  总结

  相比border属性,用background的模拟边框存在以下的优势和劣势

  优势

  劣势

  可以控制宽高,渐变色,运动方向等,灵活多变,能实现很多border不能实现的效果,并且不用添加额外的元素

  不能实现border圆角

  需要注意的是 background模拟的边框不等同于真正的边框,是不占用边框的宽高的,计算盒子模型时要留心

  最后

  由于CSS3对背景属性的进一步丰富,利用CSS3的多背景可以实现很多以前必须借助js或图片才能实现的效果,比如半透明背景、几何图案背景、条纹背景等,期待和大家一块儿去探索CSS的奥秘。

以上是“如何使用纯css实现动态边框”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网VUE频道!

--结束END--

本文标题: 如何使用纯css实现动态边框

本文链接: https://www.lsjlt.com/news/89748.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用纯css实现动态边框
    小编给大家分享一下如何使用纯css实现动态边框,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   CSS3 Backgroun...
    99+
    2022-10-19
  • 如何实现动画CSS边框
    这篇文章给大家分享的是有关如何实现动画CSS边框的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。动画CSS边框当我们想使我们的项目更可见时,该怎么办来给它做个动画!我们可以对我们的边框进行动画化处理,甚至在不改变元...
    99+
    2023-06-27
  • css如何实现图片边框运动动画
    这篇文章给大家分享的是有关css如何实现图片边框运动动画的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。如何实现图片的边框运动,这点在一些移动端的效果的经常应用,下面是图标边框运动实现代码:<!DOCTYPE...
    99+
    2023-06-26
  • 如何使用CSS实现元素的边框动画效果
    如何使用CSS实现元素的边框动画效果导语:在网页设计中,为了增加用户的视觉体验和页面的吸引力,常常会使用一些动画效果来使页面元素更加生动和有趣。其中,边框动画是一种很常见的效果,它可以使元素边框呈现出变化、闪烁或者流动的动态效果。本文将介绍...
    99+
    2023-11-21
    动画 CSS 边框
  • CSS边框如何使用
    这篇文章主要讲解了“CSS边框如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS边框如何使用”吧! <!DOCTYPE html>...
    99+
    2022-10-19
  • css如何实现虚线边框滚动效果
    这篇文章将为大家详细讲解有关css如何实现虚线边框滚动效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。基本HTML<div class="box"> ...
    99+
    2023-06-08
  • CSS如何实现图像边框
    小编给大家分享一下CSS如何实现图像边框,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!CSS图像边框你是否曾经想象过你的元素周围有甜甜圈现在,你无需过多的编码即可...
    99+
    2023-06-27
  • 如何实现蛇式CSS边框
    小编给大家分享一下如何实现蛇式CSS边框,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!蛇式CSS边框如果我们需要双色超可视边框怎么办我们可以穿上蛇的衣服,想怎么着...
    99+
    2023-06-27
  • 如何实现多色CSS边框
    小编给大家分享一下如何实现多色CSS边框,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!多色CSS边框如果我们想给边框加上比前面的示例更多的颜色怎么办我们甚至可以将...
    99+
    2023-06-27
  • 纯CSS如何实现平行四边形图标
    今天小编给大家分享一下纯CSS如何实现平行四边形图标的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。平行四边形图标<di...
    99+
    2023-07-04
  • 如何使用纯css实现水波动画
    这篇文章主要介绍了如何使用纯css实现水波动画,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。由于生成gif的工具比较弱(在线求好用的mac版...
    99+
    2022-10-19
  • 使用CSS实现多边框和透明边框的方法
    这篇文章主要讲解了“使用CSS实现多边框和透明边框的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“使用CSS实现多边框和透明边框的方法”吧!CSS多边框...
    99+
    2022-10-19
  • 如何使用纯CSS实现单一div的正多边形变换
    这篇文章给大家分享的是有关如何使用纯CSS实现单一div的正多边形变换的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   纯粹利用CSS,让“单一个”div,从正三角形变换为正...
    99+
    2022-10-19
  • css如何实现去掉div边框
    这篇文章给大家分享的是有关css如何实现去掉div边框的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。css去掉div边框的方法是,给div添加border-style属性,并将属性值设置为none,例如【p.no...
    99+
    2023-06-15
  • css如何实现波浪线边框
    本篇内容介绍了“css如何实现波浪线边框”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2022-10-19
  • 如何使用纯css实现的无缝滚动
    这篇文章主要为大家展示了“如何使用纯css实现的无缝滚动”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用纯css实现的无缝滚动”这篇文章吧。<!do...
    99+
    2022-10-19
  • 如何使用纯CSS实现3D
    这篇“如何使用纯CSS实现3D”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“如何使用纯CSS实现3D”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢...
    99+
    2022-10-19
  • 如何用css实现带箭头的边框
    这篇文章主要介绍“如何用css实现带箭头的边框”,在日常操作中,相信很多人在如何用css实现带箭头的边框问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何用css实现带箭头的...
    99+
    2022-10-19
  • 如何使用css实现文字边框虚线样式
    这篇文章主要为大家展示了“如何使用css实现文字边框虚线样式”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用css实现文字边框虚线样式”这篇文章吧。  ...
    99+
    2022-10-19
  • 纯css如何实现流向性和动态线条效果
    这篇“纯css如何实现流向性和动态线条效果”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“纯css如何实现流向性和动态线条效果”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接...
    99+
    2023-06-08
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作