2016-05-26 3 views
1

У меня уценки с HTML, построенный внутри и мне нужно изменить следующее:Img ЦСИ VS CSS фоновое изображение нет внутреннего Размеры

<img src="..." /> 

В

<img class="image" /> // Could also be a div, doesn't matter 

И дать ему фон -изображение CSS-стиля (это связано с комплектом веб-пакетов и тем фактом, что у меня нет импорта и переменных в файлах .md)

Проблема в том, что первая опция загружает изображение должным образом без га ving, чтобы указать высоту/ширину, а второй подход ничего не показывает, если я не укажу высоту/ширину.

Fiddle demonstrating issue

Почему это и есть способ обойти это без указания высоты/ширины для каждой такой встречаемости?

+0

Почему? Поскольку установка фонового изображения делает только это, и если элемент не имеет содержимого или определенных измерений, он сворачивается соответственно, и фон не может быть замечен, поскольку он не имеет размера. – j08691

+0

@ j08691 Делает смысл. Так или иначе? –

+1

Есть ли какой-нибудь путь вокруг чего? Имея пустой элемент (а не '') без каких-либо измерений, а контент не показывает фоновое изображение? № – j08691

ответ

2

Лучшее, что вы можете сделать, это рассчитать долю img, а затем использовать значение для padding и cover, чтобы соответствовать, что:

В качестве примера, если изображение 1:1 доля:

.image { 
 
    background-image: url('http://i.imgur.com/3Zh2iqf.jpg'); 
 
    background-repeat: no-repeat; 
 
    background-size:cover; 
 
    padding-top:100%; 
 
}
<div> 
 
    <div class="image"> 
 
    </div> 
 
</div>

+1

Хороший подход. Всегда рады узнать новые вещи :) –

+0

Очень приятное колдовство! –

+0

@ OmriAharon рад помочь U – DaniP

Смежные вопросы