Что касается истинного «универсального ответа», я не могу его дать. Однако я могу дать простой и окончательный ответ на некоторые детали ...
670 ПИКСЕЛЕЙ
По крайней мере, это кажется безопасным ответом для продуктов Microsoft. Я прочитал много предложений, в том числе 675, но, протестировав это сам, я придумал 670.
Если оставить в стороне все DPI, проблемы с полями, аппаратные различия, этот ответ основан на том факте, что если я использую предварительный просмотр печати в IE9 (со стандартными полями) - и УСТАНАВЛИВАЮ РАЗМЕР ПЕЧАТИ НА 100%, а не на значение по умолчанию «сжатие по размеру» , все умещается на странице, не обрезаясь по ширине.
Если я отправлю себе электронное письмо в формате HTML и получаю его с помощью Windows Live Mail 2011 (чем стал Outlook Express) и распечатываю страницу с шириной 670 - снова все подходит. Это верно, если я отправлю его в виде реальной бумажной копии или файла MS XPS (виртуальная распечатка).
До экспериментов я использовал произвольную ширину 700. Во всех сценариях, упомянутых выше, часть страницы обрезалась. Когда я уменьшил до 670, все подошло идеально.
Что касается того, как я устанавливаю ширину - я просто использовал примитивную html-таблицу «обертку» и определил ее ширину равной 670.
Если вы можете диктовать программное обеспечение конечного пользователя, такие вопросы могут быть простыми. Если вы не можете (как это обычно бывает), вы можете проверить детали, например, какие браузеры они используют и т. Д., И жестко запрограммировать решения для наиболее важных из них. Между IE и FF вы охватите буквально около 90% веб-пользователей. Добавьте какой-нибудь другой код для «всех остальных», который обычно работает, и закончите ...
width:auto
которая отрегулирует ширину содержимого в соответствии с шириной бумаги