Получить высоту целой страницы в пикселях
Для некоторых украшений мне нужно вставить верхний край в начале документа, который составляет 34% всей высоты страницы (с учетом маржи).
Моя страница <body> начните вот так:
<body bgcolor="#dedede" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" style="-webkit-text-size-adjust:none;">
<tbody>
<table width="100%" border="0" cellpadding="0" cellspacing="0" align="center" bgcolor="#dedede">
<tr>
<td>
<table class="premier-tableau" width="600" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" align="center">
<thead>
<tr height="500" /> <!-- I need to use this line as a margin -->
</thead>
<tbody>
<tr>
<td width="35" />
<td width="530">
<font color="#5e5e5e" face="Arial, Helvetica, sans-serif" size="2" style="font-size: 12px;">
Это для использования в сообщениях электронной почты.
Конечно, можно вручную вычислить количество пикселей и добавить статический результат в <tr> . Но, это часть полуавтоматического процесса, и я хотел бы избежать этого.
Также обратите внимание, что целевой SMTP-сервер может иметь строгую политику и отказывать вложения. Итак, я не вижу, как использовать внешние библиотеки (например, JQuery). В качестве современного экстентамента я бы хотел избежать использования их...
Принимаются любые встраиваемые решения (css; javascript; svg...).
Ответы
Ответ 1
Есть единицы просмотра, которые были разработаны для этого. Немногие браузер поддерживают его на самом деле, но использование height="34vh"
будет правильным способом для продолжения через несколько лет.
Потребуется несколько лет, чтобы клиенты соответствовали стандарту. Фактический способ действовать сейчас - это вычислять размер (в пикселях) вручную каждый раз, когда документ редактируется.
Ответ 2
document.body.parentNode.offsetHeight
но - javascript не будет запускаться в сообщениях электронной почты:) Поэтому я считаю, что вам нужно сделать это вручную.
Ответ 3
так как у вас нет полей на теле, простая высота должна сделать это.
document.getElementsByTagName("body")[0].height