#html #css #css-selectors #css-paged-media #antenna-house
Вопрос:
Мне нужно отобразить «вкладку» с правой стороны всех :первых и :правых страниц. Вкладки должны находиться в одном и том же положении на всех страницах.
Это мой макет HTML:
lt;?xml version="1.0" encoding="UTF-8"?gt; lt;htmlgt; lt;head/gt; lt;tab class="tab1"gt;RGlt;/tabgt; lt;bodygt; lt;sectiongt; lt;pgt;All my contentlt;/pgt;. lt;/sectiongt; lt;/bodygt; lt;/htmlgt;
К сожалению, :первая и :правая страницы имеют разные поля, поэтому приведенный ниже CSS приводит к тому, что вкладки находятся в разных положениях в зависимости от страницы:
@page :first { size: A4; margin-top: 72mm; @right-top { content: element(rightTab); } } @page :right{ size: A4; margin-top: 32mm; @right-top { content: element(rightTab); } } tab{ position:running(rightTab); } .tab1{ margin-top:50mm; }
Можно ли установить другое значение для верхнего поля в зависимости от выбора страницы? Например, 50 мм на :первых страницах и 90 мм на :правых страницах?
Ответ №1:
Желающих нет? Вот мое мнение. Нет, изменить значение свойства в зависимости от выбора страницы невозможно. Или, по крайней мере, я ничего не нашел об этом в спецификации.
Это невозможно сделать на уровне класса, но, конечно, можно изменить свойства страницы в зависимости от селектора.
Соответственно, я изменил поля страницы, чтобы вкладка теперь отображалась в одном и том же месте на обеих страницах. Поле свойства-верх в соответствующей области (@справа вверху @страницы :первый) теперь установлено равным-40 мм, так что эффективное поле в области будет одинаковым (72-40 = 32 мм) как для @страницы :первый, так и для @страницы :справа.
@page :first { size: A4; margin-top: 72mm; @right-top { margin-top:-40mm; content: element(rightTab); } } @page :right{ size: A4; margin-top: 32mm; @right-top { content: element(rightTab); } } tab{ position:running(rightTab); } .tab1{ margin-top:50mm; }
Хорошо, если бы я подумал об этом еще несколько минут, я мог бы понять это без публикации.
Комментарии:
1. С другой стороны, публикация этого сейчас означает, что кто-то, у кого в будущем возникнет та же проблема, найдет ваш пост