Вы можете использовать псевдоэлемент для создания новой строки между <li>
без необходимости создания HTML, установив его display: block
li {
display: inline;
}
/* change media query value for snippet */
@media (max-width: 800px) {
li:nth-last-of-type(2)::before {
content: '';
display: block;
/* demo */
height: 2px;
background: red;
}
}
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
ОБНОВЛЕНИЕ
Поскольку вы обновляете свой вопрос с остальной частью вашего CSS (что означает, что вы используете float: left
в <li>
. Вместо этого можно установить clear: left
или clear: both
для этого элемента
ul {
list-style: none
}
li {
float: left;
}
/* change media query value for snippet */
@media (max-width: 800px) {
li:nth-last-of-type(2) {
clear: left; /* both */
/* demo */
height: 2px;
background: red;
}
}
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>