如何将自定义边边框设置为图像并使其显示在其他图像上?

Posted

技术标签:

【中文标题】如何将自定义边边框设置为图像并使其显示在其他图像上?【英文标题】:How to set custom sided border to image & make it appear on on other? 【发布时间】:2021-02-10 12:33:53 【问题描述】:

我正在尝试实现以下所需的输出。

下面是我实现的边框部分。现在如何重叠图像并设置边框如下图。

下面是我的代码。

<!DOCTYPE html>
<html>
<head>
    <style> 
        .img1 

            border: 15px solid transparent;
            background: 
            linear-gradient(#faa633, #faa633) 
            top left/ /* position */
            50% 50% /* width height */
            border-box no-repeat;
            z-index: 1
        

        .img2
            border: 15px solid transparent;
            background: 
            linear-gradient(#faa633, #faa633) 
            top right/ /* position */
            50% 100% /* width height */
            border-box no-repeat;
            z-index: 2
        
    </style>
</head>
<body>

    <img src="https://picsum.photos/id/10/200/150" class="img1">
    <img src="https://picsum.photos/id/10/200/150" class="img2" >


</body>
</html>

【问题讨论】:

【参考方案1】:

使用伪元素我们可以做到这一点。

.image-container 
  display: inline-block;
  margin-left: 100px; /* for testing purpose */
  position: relative; /* It must add to parent element */


.img1 
  border: 15px solid transparent;
  background: linear-gradient(#faa633, #faa633) 
            top left/ /* position */
            50% 50% /* width height */
            border-box no-repeat;
  z-index: 1;
  position: absolute;
  bottom: -100px; /* to push to bottom (height/2) */
  left: -100px; /* to push to left (width/2) */


.img2-box 
  position: relative;
  display: inline-block;


.img2-box::before 
  position: absolute;
  content: '';
  width: 15px;
  height: 100%;
  left: 0;
  top: 0;
  background: #fff;


.img2-box::after 
  position: absolute;
  content: '';
  height: 15px;
  width: 60%;
  left: 0;
  top: 0;
  background: #fff;


.img2-box img 
  border: 15px solid #faa633
<div class="image-container">
  <img src="https://picsum.photos/id/10/200/200" class="img1">
  <div class="img2-box">
    <img src="https://picsum.photos/id/10/400/300" class="img2">
  </div>
</div>

【讨论】:

Thnx 兄弟,但我需要第一张图像左侧的边框和边框下方的第二个边框 我没听懂你。你能解释更多你想要什么吗?以便我可以帮助您。 我想要和上面附上的图片一样 如果问题得到解决,请接受并投票赞成我的回答。【参考方案2】:

您必须在:before 中使用颜色请检查以下代码

.outer 
 display: flex;
    align-items: flex-end;

imgmax-width: 100%
.img1 
    position: relative;
    padding: 20px 0 0 20px;
    float: left;
    top: 90px;
    margin-right: -90px;
    width: 180px;
    z-index: 1;

.img2
  position: relative;
  float: left;
  padding: 20px 20px 0 0;
  width: 400px;
      border-bottom: 20px solid red;

.img1 img, .img2 img
  position: relative;
  display: block;

.img1:before 
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 110px;
    height: 120px;
    background: red;
    display: block;

.img2:before
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: red;
    display: block;
<div class="outer">
<div class="img1"><img src="https://webmeup.com/upload/blog/lead-image-105.png"></div>
   <div class="img2"> <img src="https://cdn.pixabay.com/photo/2015/02/24/15/41/dog-647528__340.jpg"> 
     </div>
</div>

希望!它适合你

【讨论】:

非常感谢兄弟:) 真的很感谢兄弟:) 做得很好 乐于助人。如果遇到任何问题,请在此处发表评论...

以上是关于如何将自定义边边框设置为图像并使其显示在其他图像上?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 <li> 网格上调整图像和文本的大小并使其居中?

如何捕获图片框中的图像并使其可以在c#应用程序中下载?

CANON SDK 将自定义白平衡设置为保存的 JPG 图像

如何在winform面板的边框上添加图像?

如何在iPhone中创建带有小时和秒钟自定义图像的数字时钟?

如何在 Matlab 中显示图像的红色通道?