Использование position: relative
и right: 38px
здесь не является идиоматическим.Он говорит, чтобы переместить правый край элементов ul влево от того места, где они обычно находятся, на 38px
, создав правое поле.Наилучшим первым шагом, вероятно, будет удаление этих двух свойств.
Похоже, что вы хотите центрированный список без маркеров, что будет результатом.Для отступа ul задается padding
, который слева уже равен 0.
Сначала я неправильно прочитал вопрос, думая, что элементы li нарушают стиль, будучи слишком широкими.Данный совет был принят, поэтому я предполагаю, что он был полезен, если бы не ответ.
Заполнение по умолчанию выходит за пределы ширины элемента, поэтому ваши блоки ul на самом деле 100% + 1em
высокие ,
Использование свойства box-sizing
css для применения box-sizing: border-box;
создаст ожидаемое поведение.
https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing
border-box Свойства ширины и высоты включают содержимое, отступы и рамку, но не включают поля.Обратите внимание, что отступы и границы будут внутри поля.Например, .box {width: 350px;border: 10px solid black;} отображает прямоугольник шириной 350px.Поле содержимого не может быть отрицательным и имеет значение 0, что делает невозможным использование рамки для исчезновения элемента.