Задать вопрос
Novitsky
@Novitsky
Веб-разработчик, дизайнер, фотограф

Почему не работает text-overflow?

Здравствуйте.

Почему-то не работает text-overflow. Вернее, текст обрезается, но не так — не добавляется многоточие в конце.

Пример:
<nav>
  <ul>
    <li><a href="#">Link 1</a></li>
    <li><a href="#">Link 2</a></li>
    <li class="clip"><a href="#">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</a></li>
    <li class="last-child">
      <a class="first-child-a" href="#">Link 4</a>
      <a href="#">Link 5</a>
    </li>
  </ul>
</nav>

body {
  margin:0;
}
nav {
	background-color:whitesmoke;
}
ul {
	display:-webkit-flex;
	display:   -moz-flex;
	display:    -ms-flex;
	display:        flex;

	margin:0;
	padding:0;
	width:100%;

	list-style:none;

	-webkit-justify-content:flex-start;
	   -moz-justify-content:flex-start;
	    -ms-justify-content:flex-start;
	        justify-content:flex-start;
}
ul li {
	display:-webkit-flex;
	display:   -moz-flex;
	display:    -ms-flex;
	display:        flex;

	margin:0 1rem 0 0;
}
ul li a {
	padding:.3rem .5rem;

	background-color:lightgrey;
}
ul li:last-child {
	margin:0;
}
.clip {
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
ul li:nth-last-child(2) {
  -webkit-flex-grow:1;
	   -moz-flex-grow:1;
	    -ms-flex-grow:1;
	        flex-grow:1;
}
.first-child-a {
  margin-right:1rem;
}

Живой пример.
  • Вопрос задан
  • 6990 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Профессиональная вёрстка на HTML и CSS
    3 месяца
    Далее
  • Skillbox
    Веб-вёрстка 3.0
    3 месяца
    Далее
  • OTUS
    HTML/CSS
    3 месяца
    Далее
Решения вопроса 1
@GreatRash
1) Если вы кроссбраузерно хотите флексы объявить, то неправильно это делаете:

ul {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}


2) Для li тоже самое повторять не надо.
3) Для того, чтоб text-overflow сработал должна быть ширина задана явно (хотя бы максимальная).

Не знаю этого ли вы хотели добиться.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
FoodSoul Калининград
от 180 000 до 250 000 ₽