38

How can you hide the overflow in a div?

Here, the text wraps to a new line if it is longer than the div.

#truncateLongTexts { width: 50px; border: 1px solid black; overflow-y: hidden; }
<div id="truncateLongTexts"> test test test test </div>

2
  • 4
    @JohnnyCraig - There is no such thing as 'overflow:none' Commented Sep 30, 2011 at 14:54
  • 5
    thanks rob. my mistake, it happens but instead of just telling people what there isnt, you should also include what there is.overflow:hidden; Commented Sep 30, 2011 at 15:15

4 Answers 4

47

Maybe the CSS property text-overflow: ellipsis can help you out with that problem.

Consider this HTML and CSS below:

<div id="truncateLongTexts"> test test test test </div> 
#truncateLongTexts { width: 100px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; /* This is where the magic happens. */ } 
Sign up to request clarification or add additional context in comments.

Comments

35

If you only want to show a single line of text in a fixed width div, give white-space:nowrap a go. Together with overflow:hidden it will force your browser not to break the line and crop the view to your forced width.

You might also add text-overflow:ellipsis to avoid cutting words and letters in half, it adds a nice ... to the end to show you there's some bits missing. I'm not sure about the browser support though, and I've never tried this one.

1 Comment

Firefox 7 just came out, it is the first Firefox that supports text-overflow. Other browsers support it (even old IEs). See text-overflow on caniuse.com. And +1.
14

You should specify a height for your div, overflow: hidden; can only hide the vertically overflowing content if there is some kind of defined height.


In other words:

Here the text just wraps down to a new line if the text is longer than the div

But how long is that div actually?


Please check out my jsFiddle demonstration that illustrates the difference.

2 Comments

even when specifying the height, the text still wraps down to a new line.. but there is overflow - yes
@clarkk Then what are you trying to achieve exactly?
0

try overflow:none;

you didn't mention if you want scrollbars or not.

EDIT:

Sorry I meant overflow:hidden.

1 Comment

There is NO none value for the overflow property. See CSS2 Spec.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.