6

Я разработал первую страницу для сайта, который содержит много информации. Я установил размер страницы 3530x2070, который легко помещается на экране 4K с разрешением 3840x2160.

<div id="mainDiv" style="width:3530px;height:2070px;border:1px black solid;">

Однако, когда я подключаюсь к телевизору 4K (не к монитору), я вижу только около 2700 пикселей в ширину - и это при использовании разрешения экрана 4096x2160 - 3840x2160 еще уже.

<div id="mainDiv" style="width:2700px;height:1070px;border:1px black solid;">

Я пробовал модели телевизоров Sony и Samsung.

Также обратите внимание, что каждый из телевизоров обнаружил правильное разрешение, т.е. когда я устанавливаю разрешение компьютера для телевизора на 3840, телевизор говорит, что он на 3840, а когда я устанавливаю компьютер на 4096, телевизор также показывает, что он установлен на 4096.

Это означает, что компьютер и телевизор согласовывают разрешение, но браузер не показывает всю ширину веб-страницы.

Еще одна часть головоломки на моем компьютерном мониторе 1920x1080, размер веб-страницы работает так, как я ожидаю (когда я уменьшаю ее в соответствии с этим разрешением). Я теряю несколько пикселей для границ и рамки браузера, а что нет, но это следовало ожидать. Потеря шириной более 1000 пикселей - это не то, что я ожидаю.

<div id="mainDiv" style="width:1900px;height:1065px;border:1px black solid;">

Я запускаю порт мини-дисплея через кабель HDMI, и, как я уже сказал, оба устройства согласуются с разрешением этого соединения.

1 ответ1

4

Масштаб DPI, кажется, является виновником.

  • Более новые версии Windows (начиная с 8.1) автоматически масштабируют DPI для каждого дисплея, чтобы адаптироваться к дисплеям с очень высокой плотностью пикселей. Похоже, что Windows масштабировала 4K-телевизор до 150% от нормального (150% из 2700 - это 4050, что очень близко к 4096).

  • Последние версии Firefox и Chrome определяют настройку масштабирования системного DPI и соответственно адаптируются. Вы можете отключить это с некоторыми дополнительными настройками:

    • В Firefox это контролируется значением конфигурации layout.css.devPixelsPerPx , которое можно редактировать в about:config . -1.0 является значением по умолчанию, где браузер будет соответствовать значению масштабирования DPI системы на основном мониторе. Чтобы Firefox не масштабировал DPI, установите это значение равным 1.0 . Установка этого значения в любое другое положительное значение указывает браузеру на такое масштабирование (по умолчанию в вашей системе установлено значение 1.5).

    • В Chrome это контролируется значением реестра DWORD high-dpi-support в ключе HKCU\Software\Google\Chrome\Profile . Установите 0, чтобы отключить масштабирование, 1, чтобы включить масштабирование, или 2, чтобы использовать значение по умолчанию.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .