#html #css #responsive #responsiveness
#HTML #css #адаптивный #отзывчивость
Вопрос:
Я пытаюсь сделать так, чтобы все изображения были max-width: 400px;
и в то же время были отзывчивыми, т.Е. удобными для мобильных устройств.
Следующий стиль сделал изображения отзывчивыми, но max-width: 100%;
делает изображения различающимися по размеру намного больше, чем хотелось бы, поэтому это не подходящее решение.
max-width: 100%;
Width: auto;
height: auto;
border: 1px #DFDFDF solid; /* Just to make the image look nicer */
Мне нужно что-то в этом роде (но отзывчивое):
max-width: 400px;
width: auto;
height: auto;
border: 1px #DFDFDF solid; /* Just to make the image look nicer */
Я пробовал много разных вещей, но я просто не могу заставить это работать.
Спасибо за вашу помощь!
Ответ №1:
По умолчанию ваши изображения должны иметь ширину родительского элемента, но вы хотите ограничить эту ширину, чтобы она не превышала 400 пикселей.
max-width: 400px;
width: 100%;
height: auto;
border: 1px #DFDFDF solid; /* Just to make the image look nicer */
Чтобы быть немного более глубоким и иметь больше контроля, вы могли бы разделить это и использовать медиа-запрос для таргетинга на ваш мобильный дисплей:
// Desktop
.your-img {
max-width:400px;
width:100%;
height:auto;
border:1px solid #dfdfdf;
}
// Mobile
@media (max-width:768px) {
.your-img {
width:auto; // Get the original width of the image
max-width:100%; // So the image can only be as wide as the device max
display:block; // Image becomes a block element
margin:0 auto; // Centre image if smaller than device width
}
}
Комментарии:
1. Спасибо! Я не знаю, как я это пропустил.
2. Нет проблем, когда я работаю с адаптивными изображениями на мобильных телефонах, я обычно либо делаю так, чтобы они отображались во всю ширину, либо, если у вас изображение, которое, естественно, меньше ширины устройства, просто установите изображение по центру, используя
margin:0 auto;