img center,round and center in div

时间:2017-06-02 08:07:51

标签: html css image ionic2

我堆栈有一个CSS问题。 我希望我的图片中心位于一个div(红色的)中,其大小为div的50%,也是完美的圆形......

这是我的HTML代码:

<ion-content class="masters">
  <ion-row>
    <div class="profil-img">
      <img src="../../assets/img/tennis-club.jpeg" alt="">
    </div>
  </ion-row>
</ion-content>

这是我的css代码:

.profil-img img{
    border-radius: 50%;
    border: 3px solid white;
   // position:absolute;
    max-width: 50%;
    max-height: 50%;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
}

.profil-img{
border: 2px solid black;
}

,结果如下: enter image description here

感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

我尝试了很多东西,现在我得到了解决方案。
这可以解决你的问题吗?

.red {
  position: relative;
  width: 250px;
  height: 250px;
  background-color: #f00;
  border: 2px solid #000;
}
.profil-img {
  position: relative;
  width: 50%;
  height: 50%;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  transform: translateY(calc(-50% - 3px)) translateX(calc(-50% - 3px));
  border: 3px solid #fff;
  overflow: hidden;
}
.profil-img > img {
  display: block;
  position: absolute;
  width: 100%;
  min-height: 100%;
  top: 50%;
  left: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%) translateX(-50%);
}
<div class="red">
  <div class="profil-img">
    <img src="https://cdn.transportbox-katzen.de/wp-content/uploads/2016/03/katze-gewohnheitstier.jpg" alt="">
  </div>
</div>

答案 1 :(得分:1)

对于完美的圆形图像,您必须为图像指定相同的宽度和高度。

.profil-img img{
    border-radius: 50%;
    border: 3px solid white;
    display: inline-block;
    height:200px;
    width: 200px;
    margin: 0 auto;
    vertical-align: middle;
}

如果您希望图像垂直和水平居中,可以尝试以下操作:

.profil-img img{
    border-radius: 50%;
    border: 3px solid white;
    display: inline-block;
    position:relative;
    top: 50%;
   left: 50%; 
    -webkit-transform: translate(-50%, -50%);
   -moz-transform: translate(-50%, -50%); 
   -ms-transform: translate(-50%, -50%); 
   -o-transform: translate(-50%, -50%); 
   transform: translate(-50%, -50%); 
    height:200px;
    width: 200px;
}

如果它适合你,请告诉我。

enter image description here