У меня есть сторона, показывающая 3 элемента div, расположенных в сетке. Сторона хорошо показана на экране. Однако при попытке распечатать страницу элементы перекрываются или вообще не отображаются. Я использую следующий CSS:Упорядочить элементы css div для печати
@media print {
#navigation { display: none; }
}
@page {
margin: 0.05cm;
}
#maps {
width: 100%;
height: 100vh;
padding: 0;
display: inline-block;
}
#map {
width: 49%;
height: 100%;
padding: 0;
display: inline-block;
vertical-align: top;
}
#map_profiles {
width: 49%;
height: 100%;
padding: 0;
display: inline-block;
vertical-align: top;
}
#map_hp {
width: 100%;
padding: 0;
height: 49%;
display: inline-block;
vertical-align: top;
}
#map_sp {
width: 100%;
padding: 0;
height: 49%;
display: inline-block;
vertical-align: bottom;
}
Полный пример можно найти по адресу: http://www.tikey.de/neuseeland/vergleich.html
ДИВОЙ карта содержит все остальные. Внутри, map и map_profiles находятся рядом друг с другом, а map_profiles содержит map_hp и map_sp, которые находятся друг над другом. Он выглядит хорошо на экране, но при печати он полностью испорчен. Я пробовал играть с css много, но я не получил его работать.
Я заметил, что раздел '@media print {}' уже закрыт в строке 3 того, что вы опубликовали. Если это так в вашем реальном файле CSS, это может быть причиной ваших проблем. (Я пишу это с сообщением, что это ваша таблица стилей печати?) – Johannes
Нет, раздел печати @media используется только для скрытия части навигации при печати. – Thomas
ага. Ну, может быть, блок высоты 'vh' для основного элемента не работает так хорошо, плюс, если вы используете« вертикальное выравнивание »в двух последних элементах, вы также должны дать им« display: inline-block » – Johannes