Я борюсь с проблемой календаря простых лиц на веб-странице, отображаемой на мобильном устройстве (планшете).Кажется, что значения css, рассчитанные простыми числами для отображения всплывающего календаря, не пересчитываются при повороте окна (вам нужно нажать на него еще раз, чтобы пересчитать).
Вот пример:
- Моя веб-страница отображается в портретном режиме.Я щелкнул значок календаря, и положение всплывающего окна хорошее:
(обратите внимание на CSS слева: 719,406px, рассчитывается по простым лицам).Пока все в порядке.
Теперь я перехожу в альбомный режим:
Обратите внимание, что всплывающее окно больше не находится рядом со значком календаря.Кроме того, CSS утверждает, что, имея такое же левое значение.
Чтобы это исправить, мне нужно щелкнуть в любом месте экрана, чтобы закрыть всплывающее окно, а затем снова щелкнуть значок календаря:
Позиция теперь хорошая, с другим и правильным значением left: 1061.91px.
Как сделать так, чтобы основные лица автоматически перенастраивали CSS, не щелкая дважды каждый раз?
Решение, которое я нашел до сих пор, заключалось в том, чтобы добавить пользовательское значение для выравнивания по правому краю экрана и переопределить левое:
.ui-datepicker.ui-widget.ui-widget-content {
left: auto !important;
right: 10px;
}
Но приведенное выше решение очень специфично для этого экрана и, к счастью,потому что у меня всегда есть кнопка календаря в правой части экрана, поэтому я всегда могу предположить, что 10 пикселей справа будут выглядеть нормально.
Я также заметил, что ui-datepicker-div является потомком телаэлемент, поэтому я не могу связать его с кнопкой с помощью css.
Любые идеи / помощь общего решения будут высоко оценены.Версия Primefaces: 6.2