Как работать с субпиксельными результатами jQuery.width()
У меня есть ul, который настроен для отображения встроенного блока и списка элементов, которые настроены для отображения встроенного блока.
У ul установлена ширина auto, поэтому он сжимается, если это делает контейнер (отзывчивый).
Для элементов списка задана автоматическая ширина их содержимого, которое теперь равно пробелам, поэтому, если они не помещаются в одну строку, они выпадают на следующую строку.
Я пытаюсь определить с помощью JQuery, если это происходит. Итак, я получаю внутреннюю ширину (используя width()) ul и вычисляю общую ширину каждого li, получая каждый outerWidth() и складывая их вместе. Затем я проверяю, больше ли общая ширина li, чем внутренняя ширина ul.
Но вот в чем проблема, jQuery возвращает значение 933.6800003051758 для внутренней ширины навигации и значение 934 для элементов списка. Так что можно подумать, что элементы списка будут разбиты на вторую строку, но это не так! Поэтому я предполагаю, что браузер округляет внутреннюю ширину навигационной системы до 934.
Что я хотел бы знать, так это то, что если я округлю внутреннюю ширину навигационной панели, прежде чем сравнивать значение с общей шириной элементов списка, будет ли это надежным или моя функция будет иногда думать, что элементы списка не разбиваются на вторую строку, когда на самом деле они есть?