CSS3:border-image





html 复制代码
<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
</head>

<body>
  <p>原始图片</p>
  <img src="./images/border1.png" alt="">
  <p>一、</p>
  <p>border: 27px solid transparent;</p>
  <p>border-image-source: url(./images/border1.png);</p>
  <div class="border-image1"></div>

  <p>二、</p>
  <p>border: 27px solid transparent;</p>
  <p>border-image-source: url(./images/border1.png);</p>
  <p>border-image-slice: 27 27 27 27;</p>
  <p>border-image-repeat: stretch;(图像边界默认拉伸)</p>
  <div class="border-image2"></div>

  <p>三、</p>
  <p>border: 27px solid transparent;</p>
  <p>border-image-source: url(./images/border1.png);</p>
  <p>border-image-slice: 27;</p>
  <p>border-image-repeat: repeat;(图像边界重复)</p>
  <div class="border-image3"></div>

  <p>四、</p>
  <p>border: 27px solid transparent;</p>
  <p>border-image-source: url(./images/border1.png);</p>
  <p>border-image-slice: 27;</p>
  <p>border-image-repeat: round;(图像边界铺满)</p>
  <div class="border-image4"></div>

  <p>五、</p>
  <p>border: 10px solid transparent;</p>
  <p>border-image: url(./images/border1.png) 27 round;</p>
  <div class="border-image5"></div>
  <p>原始图片</p>
  <img src="./images/border2.png" alt="">

  <p>六、</p>
  <div>border: 64px solid transparent;</div>
  <div> border-image-source: url(./images/border2.png);</div>
  <div>border-image-slice: 64;</div>
  <div class="border-image6"></div>

  <p>七、相比于background-image,优势在于等比缩放时可以保证四个角的宽度不变</p>
  <div>border: 64px solid transparent;</div>
  <div> border-image-source: url(./images/border2.png);</div>
  <div>border-image-slice: 64 fill;(fill保留图像的中间部分)</div>
  <div class="border-image7"></div>
  <p>八、</p>
  <div>background-image: url(./images/border2.png);</div>
  <div>background-size: 100% 100%;</div>
  <div class="border-image8"></div>
</body>

</html>

<style>
  * {
    box-sizing: border-box;
  }

  .border-image1 {
    width: 300px;
    height: 150px;
    border: 27px solid transparent;
    border-image-source: url(./images/border1.png);
  }

  .border-image2 {
    width: 300px;
    height: 150px;
    border: 27px solid transparent;
    border-image-source: url(./images/border1.png);
    border-image-slice: 27 27 27 27;
  }

  .border-image3 {
    width: 300px;
    height: 150px;
    border: 27px solid transparent;
    border-image-source: url(./images/border1.png);
    border-image-slice: 27;
    border-image-repeat: repeat;
  }

  .border-image4 {
    width: 300px;
    height: 150px;
    border: 27px solid transparent;
    border-image-source: url(./images/border1.png);
    border-image-slice: 27;
    border-image-repeat: round;
  }

  .border-image5 {
    width: 300px;
    height: 150px;
    border: 10px solid transparent;
    border-image: url(./images/border1.png) 27 round;
  }

  .border-image6 {
    width: 468px;
    height: 232px;
    border: 64px solid transparent;
    border-image-source: url(./images/border2.png);
    border-image-slice: 64;
  }

  .border-image7 {
    width: 468px;
    height: 232px;
    border: 64px solid transparent;
    border-image-source: url(./images/border2.png);
    border-image-slice: 64 fill;
  }

  .border-image8 {
    width: 468px;
    height: 232px;
    background-image: url(./images/border2.png);
    background-size: 100% 100%;
  }
</style>


相关推荐
kyriewen5 小时前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试
IT_陈寒5 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
山河木马6 小时前
矩阵专题2-怎么创建视图矩阵(uViewMatrix)
javascript·webgl·计算机图形学
小林攻城狮6 小时前
使用 Transport 节流解决 Vercel AI SDK 流式渲染卡死问题
前端·react.js
前端缘梦6 小时前
告别 TS 运行时类型漏洞!Zod 完整入门实战教程(前端 / 全栈必备)
前端·react.js·全栈
the_answer6 小时前
Webpack vs Vite 深度对比分析
前端·webpack
转转技术团队7 小时前
验证码识别实战:前端不写页面,改训模型了?
前端
MomentYY7 小时前
Temperature:AI 的“脑洞旋钮”
前端·llm·ai编程
远航_7 小时前
OpenSpec 完整详细介绍
前端·后端
召钱熏7 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端