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>


相关推荐
牛奶1 天前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶1 天前
前端人为什么要学AI?
前端·人工智能·ai编程
Kagol1 天前
🎉OpenTiny NEXT-SDK 重磅发布:四步把你的前端应用变成智能应用!
前端·开源·agent
GIS之路1 天前
ArcGIS Pro 中的 notebook 初识
前端
JavaGuide1 天前
7 道 RAG 基础概念知识点/面试题总结
前端·后端
ssshooter1 天前
看完就懂 useSyncExternalStore
前端·javascript·react.js
格砸1 天前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
Live000001 天前
在鸿蒙中使用 Repeat 渲染嵌套列表,修改内层列表的一个元素,页面不会更新
前端·javascript·react native
柳杉1 天前
使用Ai从零开发智慧水利态势感知大屏(开源)
前端·javascript·数据可视化