Сделать круговое изображение в соответствии с размером экрана с помощью CSS

Я пытаюсь сделать свои изображения круговыми. Несмотря на то, что это изображение имеет разную ширину и высоту, я хочу, чтобы это был круг, который, кажется, имеет одинаковую длину и ширину и высоту. Например; Размер моего изображения: 250X300. но я хочу, чтобы это было 200X200 круг. На самом деле я могу сделать это легко. Проблема заключается в том, чтобы сделать это в соответствии с размером экрана. Когда я переключаю свой мобильный телефон в горизонтальное положение, он должен меняться в соответствии с размерами экрана.

мой код CSS ниже

.image {
     height: 100px; 
     width: 100px; 
    border: 2px solid #fff;
    border-radius: 50%;
    box-shadow: 0 0 5px gray;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
} 

3 ответа

Решение

Использовать VW единиц. Они зависят от ширины области просмотра. так, это может быть как ширина: 2vw; высота: 2vw; Ширина круга будет зависеть от ширины устройства.

.image {
     height: 5vw; 
     width: 5vw; 
    border: 2px solid #fff;
    border-radius: 50%;
    box-shadow: 0 0 5px gray;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
} 
<div class="image"></div>

Для>ionic2

<ion-card text-center class="hide-card">
    <img src="http://placehold.it/300x200" class="custom-avatar"/>
    <h2>Victorcodex</h2>
    <p>Have some p tag here</p>
    <p>I am the third guy inline here</p>
    <hr>
</ion-card>

.hide-card {
  -webkit-box-shadow: none!important;
}

.custom-avatar {
  height: 30vw;
  width: 30vw;
  border: 1px solid #fff;
  border-radius: 50%;
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
}

боковое меню ionic2 с центрированным изображением и текстом

Пожалуйста, позвольте мне знать, было ли это полезно для вас.

Использование брата background-size: 100% 100%; ваш стиль будет похож

 div { 
        background-size: 100% 100%;
        background-repeat: no-repeat;
        border-radius: 50%;
        width: 200px;
        height: 200px;
    }

демонстрационная ссылка: http://jsfiddle.net/vNh8t/314/

Другие вопросы по тегам