Адаптивное изображение на адаптивном фоновом изображении — HTML и CSS — Форумы SitePoint
Гэндальф
#1
Я пытаюсь получить изображение на фоновом изображении, оба из которых должны быть отзывчивыми. У меня он работает в Chrome и IE10/11 в Windows и даже в Safari 8 на iPhone, но в Firefox фоновое изображение вообще не отображается — высота h2 равна 0.
Мой CSS:
заголовок { ширина: 100%; обивка верха: 27,34%; фон: url(../images/sunset-bg.jpg) без повторов слева вверху; размер фона: 100% авто; } ч2 { маржа: 0; } h2 изображение { положение: абсолютное; верх: 10 пикселей; ширина: 100%; максимальная ширина: 503 пикселя; высота: авто; }
Моя разметка:
./images/sunset-logo1.png" alt="альтернативный текст"> заголовок>
ронпат
#2
Каков размер фонового контейнера
?
Было бы полезно иметь возможность видеть изображения или, по крайней мере, знать размеры изображений и знать, как оформлена страница, особенно ширина.
Тем не менее, над предположением можно посмеяться
<голова> <мета-кодировка="utf-8">шаблон <тип стиля="текст/CSS"> заголовок { ширина: 100%; обивка верха: 27,34%; фон: url(http://placehold. it/1000x500/ddeeff) без повторов слева вверху; размер фона: 100% авто; контур: 1px сплошной синий; должность: родственница; } ч2 { положение: абсолютное; слева:0; верх:0; ширина:100%; высота:100%; маржа: 0; контур: 1px пунктирная известь; } h2 изображение { ширина:100%; максимальная ширина: 503px; высота:авто; } стиль> голова> <тело> <заголовок><а href="."> заголовок> тело>
1 Нравится
Гэндальф
Привет @ronpat, максимальная ширина контейнера: 1024px. Спасибо за ваше решение. Я положу это в codepen и поиграю — наверное, мне нужно было сделать это в первую очередь.
1 Нравится
Гэндальф
#4
Работает нормально. Однако мой контейнер — это display: flex, который, похоже, портит макет, хотя заголовок не является flex-элементом. Похоже, мне нужно переосмыслить!
.контейнер { поле: 0 авто; максимальная ширина: 1024 пикселей; отображение: -webkit-flex; отображение: -ms-flex; дисплей: гибкий; -webkit-flex-flow: перенос строк; -ms-flex-flow: перенос строк; flex-flow: перенос строк; }
1 Нравится
ПолОБ
#5
Гэндальф:
, хотя заголовок не является гибким элементом.
Я не знаю, что вы настроили, но если заголовок является прямым дочерним элементом .container, то он автоматически становится flex-элементом.
Нам нужно увидеть ваш полный макет, чтобы решить проблему:)
1 Нравится
Гэндальф
#6
Спасибо, Пол. Моя настройка в основном такова:
<заголовок>заголовок> <дел>дел> <дел>дел> <дел>дел> <нижний колонтитул>нижний колонтитул>
Итак, я думаю, мне нужно добавить внутренний div и применить к нему гибкость. Суммируйте как:
<заголовок>заголовок> <дел> <дел>дел> <дел>дел> <дел>дел><нижний колонтитул>нижний колонтитул>