Загрузка 4
Для Bootstrap 4 используйте Sass (SCSS):
// make images responisve by default
img {
@extend .img-fluid;
}
ответ обновлен для версии 3
Bootstrap 3 имеет специальный класс для адаптивных изображений (установите максимальную ширину на 100%). Этот класс определяется как:
.img-responsive {
display: block;
height: auto;
max-width: 100%;
}
Обратите внимание, тег img получает по умолчанию:
img {
vertical-align: middle;
border: 0;
page-break-inside: avoid;
max-width: 100% !important;
}
Поэтому используйте class="img-responsive"
, чтобы сделать ваши изображения адаптивными.
Чтобы сделать все изображения адаптивными по умолчанию:
css: добавьте приведенный ниже код под загрузочный css:
img {
display: block;
height: auto;
max-width: 100%;
}
less: добавьте приведенный ниже код в файл mixins.less:
img {
&:extend(.img-responsive);
}
Примечание: требуется версия Less 1.4.0. см.: https://stackoverflow.com/a/15573240/1596547
Карусель
теги img внутри карусели по умолчанию реагируют
Семантические правила
См. также ответ @its-me (https://stackoverflow.com/a/18653778/1596547). Использование вышеуказанного, чтобы сделать все ваши изображения адаптивными по умолчанию, переводит ваши изображения на уровень блокировки. элементы. Элементы уровня блока не допускаются в абзацах (<p>
), см.: https://stackoverflow.com/a/4291515/1596547забастовка>
Насколько я понимаю, различие между блочными и встроенными элементами заменено более сложным набором категорий контента. См. также: https://developer.mozilla.org/en-US/docs/Web/HTML/Inline_elemente#Inline_vs._block-level. Таким образом, в HTML5 тег p может содержать любой элемент фразировки, смешанный с обычными символьными данными. (см.: http://www.w3.org/TR/html-markup/p.html) Тег img
является таким фразовым элементом. Значение по умолчанию тега img
для свойства отображения действительно равно inline-block
. Изменение свойства display на block не нарушает ни одно из предыдущих правил.
Элементы уровня блока (display:block
) занимают все доступное пространство своего родителя, что кажется именно тем, что вы ожидаете от адаптивных изображений. Таким образом, установка display: block;
кажется разумным выбором, который следует предпочесть объявлению inline-block
.
Изображения внутри элементов p, для которых требуется inline-block
, как предлагает @its-me (https://stackoverflow.com/a/18653778/1596547) может вообще не реагировать.
person
Bass Jobsen
schedule
29.07.2013
.img-responsive
- person Schmalzy   schedule 29.07.2013