【问题标题】:convert rectangular image into Round image将矩形图像转换为圆形图像
【发布时间】:2017-10-08 22:04:36
【问题描述】:

我的目标是使图像变圆并显示。如果图像是方形的,那么我可以通过简单地使用 CSS 的border-radius:50%property 将其转换为圆形。但是当图像是矩形时,使用这个 CSS 属性会得到椭圆形的图像。

我想到的一个解决方案是首先使用clip:rect(10px,0px,10px,0px) 属性将矩形图像转换为正方形。通过使用它,它会将图像剪裁成正方形,但不会删除剪裁的空间。即它使该部分不可见,但图像仍然是矩形。

剪切的部分不可见,但仍然存在。所以即使现在我也在尝试使用border-radius:50% 属性,它给了我椭圆形图像,右侧和左侧被剪裁了。

有什么办法可以解决这个问题吗?

【问题讨论】:

  • @guergana 哇!!尝试了各种图像.. 像魅力一样工作.. 我正在做的错误是在我的图像标签中使用这些标签而不是在其容器标签中使用它.. 非常感谢.. 希望我能给你一些积分,但我的声誉分数不允许我:|再次非常感谢你
  • 很高兴能帮上忙!
  • 我可以将其标记为解决方案,您可以将其标记为我猜的正确解决方案
  • 你可以试试这个。 跟进评论 stackoverflow.com/questions/26421274/…

标签: css angularjs image-clipping


【解决方案1】:

检查此:http://bennettfeely.com/clippy/ 使用此您可以将图像的特定部分剪辑成圆形。

img {
  width: 280px;
  height: 280px;
  -webkit-clip-path: circle(50.0% at 50% 50%);
  clip-path: circle(50.0% at 50% 50%);
}


/* Center the demo */

html,
body {
  height: 100%;
}

body {
  display: flex;
  justify-content: center;
  align-items: center;
}
<img src="https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcSCZNdFX5bx4Y_s8H-StHpWx3ujpCsG3qxhIu_-57pqSq3wKPEbndqnmROl" />

【讨论】:

  • @IshanKhanduja 很高兴听到这个消息。您可以标记已回答。 :)
【解决方案2】:

这将解决您的问题,但您需要调整宽度和高度,图像将位于中心,但您可以使用 background-position: center; 调整它

<div style="margin-top:5%"> 
    <div style="height:200px;width:200px; margin: 5% auto;
         background-image: url(https://i.stack.imgur.com/oImMD.png);
         background-repeat: no-repeat;    border-radius: 50%;
         border: 5px solid #fff;background-position: center;">
    </div>
</div>

【讨论】:

  • 是的.. 处理各种图像 :) 非常感谢 :)
  • 很高兴为您提供帮助。 :) 如果问题已关闭,请标记正确答案。
【解决方案3】:

您需要定义图像的widthheight,然后对其应用border-radius

您可以这样做的一种方法是

解决方案 1

.circle-img {
   height: 100px;
   width: 100px;
   border-radius: 50%;
}

但是,这可能会对您所期望的圆形图像输出造成一些失真。 那么还有什么办法呢

解决方案2

.circle-wrapper {
   height: 100px;
   circle: 100px;
   overflow: hidden;
   border-radius: 50%;
}

这里发生的是它会隐藏任何超过 100x100 规格的东西并产生圆形效果。

【讨论】:

  • 是的先生.. 第二个解决方案是我想要的完美解决方案:) 非常感谢 :)
  • @IshanKhanduja 如果解决了您的问题,请标记为正确
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-09
  • 1970-01-01
  • 1970-01-01
  • 2012-03-17
  • 1970-01-01
  • 2011-07-10
相关资源
最近更新 更多