Mam div
z następującym stylem css:
width:335px; float:left; overflow:hidden; padding-left:5px;
Kiedy wstawiam do div
niego długi wiersz tekstu , przechodzi on do nowego wiersza i wyświetla cały tekst. Chcę mieć tylko jeden wiersz tekstu, który nie będzie łamany. Gdy tekst jest długi, chcę, aby przepełniony tekst zniknął.
Myślałem o ustawieniu wysokości, ale wydaje mi się, że to źle.
Może jak dodam wysokość taką samą jak czcionka to powinna działać i nie sprawiać problemów w różnych przeglądarkach?
Jak mogę to zrobić?
Odpowiedzi:
Jeśli chcesz ograniczyć to do jednej linii, użyj
white-space: nowrap;
na div.źródło
...
jeśli jest więcej znaków do pokazania, ponieważ długość linii jest długa i wychodzi poza zapisany div.Jeśli chcesz zaznaczyć, że w tym elemencie div jest jeszcze więcej dostępnych treści, prawdopodobnie zechcesz pokazać „wielokropek”:
text-overflow: ellipsis;
Powinno to być dodatkiem do
white-space: nowrap;
sugerowanych przez Septnuits.Upewnij się również, że sprawdziłeś ten wątek, aby obsłużyć to w przeglądarce Firefox.
źródło
text-overflow: ellipsis;
zoverflow: hidden;
iwhite-space: nowrap;
aby to działałoMożesz użyć tego kodu CSS:
text-overflow: ellipsis; overflow: hidden; white-space: nowrap;
Właściwość text-overflow w CSS radzi sobie z sytuacjami, w których tekst jest przycinany, gdy przepełnia pole elementu. Można go przyciąć (tj. Odciąć, ukryć), wyświetlić wielokropek („…”, wartość zakresu Unicode U + 2026).
Należy zauważyć, że przepełnienie tekstu występuje tylko wtedy, gdy właściwość przepełnienia kontenera ma wartość hidden , scroll lub auto i white-space: nowrap; .
Przepełnienie tekstu może się zdarzyć tylko w przypadku elementów blokowych lub wbudowanych , ponieważ element musi mieć szerokość, aby został przepełniony. Przepełnienie następuje w kierunku określonym przez właściwość kierunku lub powiązane atrybuty.
źródło
najlepszy kod dla UX i UI to
white-space: nowrap; text-overflow: ellipsis; overflow: hidden; display: inherit;
źródło
width:200px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;
Zdefiniuj również szerokość, aby ustawić przepełnienie w jednej linii
źródło
jeśli dodasz, jeśli masz długi tekst, możesz użyć poniższego kodu CSS;
text-overflow: ellipsis; overflow: visible; white-space: nowrap;
sprawia, że cały tekst linii jest widoczny.
źródło
Miałem ten sam problem i rozwiązałem go za pomocą:
display: inline-block;
na dany
div
temat.źródło