Элементы должны рисоваться до целого числа пикселей, и, как и в других рассмотренных ответах, проценты действительно соблюдаются.
Важным примечанием является то, что пикселей в этом случае означает CSS-пиксели , а не экранные пиксели, поэтому контейнер 200px с дочерним элементом 50,7499% будет округлен до 101px CSS-пикселей , которые затем визуализируются в 202px на экране сетчатки, а не 400 * .507499 ~ = 203px.
Плотность экрана игнорируется в этом расчете, и нет способа отрисовать * элемент до определенных размеров субпикселя сетчатки.Вы не можете иметь фоны или границы элементов, отображаемые с размером менее 1 css пикселей , даже если фактический размер элемента может быть меньше 1 css пикселей, как показала Сэнди Гиффорд.
[*] Вы можете использовать некоторые методы, такие как box-shadow со смещением 0,5 и т. Д., Но фактические свойства box-модели будут отображаться до полного пикселя CSS.