Prevent text from overflowing a padded container in HTML
I have this situation:
<div style="width: 100px; padding: 5px 15px 5px">Some text longer than 100px</div>
If I set overflow: hidden on the div the text will still go outside the 15px padded area on the right:
++----------------------------+------+
++----------------------------+------+
||This text should stop here -| but i|
++----------------------------+------+
++----------------------------+------+
开发者_运维百科
Can this be done without putting an extra element inside to hold the text. Any solution in any browser will do, I just want to know if it's possible.
You can use a transparent border to make the margin you want. It won't be overflowed:
div {
white-space: nowrap;
overflow: hidden;
max-width: 300px;
border-left:1em solid transparent;
border-right:1em solid transparent;
text-overflow: ellipsis;
}
Hey I don't know about your requirement exactly, there is one way to truncate the text using css3 ellipsis property.
Example
a) Normal case
+-------------------------++
some text which is exceeding the container
+-------------------------++
b) After implementing ellipsis
+-------------------------++
some text which is exceed...
+-------------------------++
Here is the reference link: https://developer.mozilla.org/En/CSS/Text-overflow which have the browser support information also.
Hope this helps!
精彩评论