Ellipses problem in css single line text and multi-line overflow text

WBOY
Release: 2016-09-22 08:42:14
Original
1117 people have browsed it

It is common to encounter text overflow during the text layout and code writing process. The following summarizes the processing of single-line text overflow and multi-line text overflow ellipsis.

One. Single line text ellipsis

<span style="color: #008080;">1</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">p </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="text1"</span><span style="color: #0000ff;">></span>
<span style="color: #008080;">2</span> <span style="color: #000000;">    这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本
</span><span style="color: #008080;">3</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">p</span><span style="color: #0000ff;">></span>
Copy after login
<span style="color: #800000;">.text1</span>{<span style="color: #ff0000;">
    width</span>:<span style="color: #0000ff;"> 100px</span>;<span style="color: #ff0000;">
    overflow</span>:<span style="color: #0000ff;"> hidden</span>;<span style="color: #ff0000;">
    white-space</span>:<span style="color: #0000ff;"> nowrap</span>;<span style="color: #ff0000;">
    text-overflow</span>:<span style="color: #0000ff;"> ellipsis</span>;
}
Copy after login

Here is a simple text example of single line text overflow:

The width attribute here is necessary because you need to know its width to determine overflow;

The overflow attribute is used to hide overflowing text;

 white-space:

Value Description
normal Default. White space is ignored by the browser.
pre White space will be retained by the browser. It behaves like the
 tag in HTML. </td>
</tr>
<tr>
<td>nowrap</td>
<td>The text will not wrap, it will continue on the same line until the <br> tag is encountered. </td>
</tr>
<tr>
<td>pre-wrap</td>
<td>Preserve whitespace sequences, but wrap normally. </td>
</tr>
<tr>
<td>pre-line</td>
<td>Combine whitespace sequences but keep newlines. </td>
</tr>
<tr>
<td>inherit</td>
<td>Specifies that the value of the white-space attribute should be inherited from the parent element. </td>
</tr>
</tbody>
</table>
<p> text-overflow:</p>
<table class="reference">
<tbody>
<tr>
<th>Value</th>
<th>Description</th>
</tr>
<tr>
<td>clip</td>
<td>Trim text. </td>
</tr>
<tr>
<td>ellipsis</td>
<td>Show ellipses to represent trimmed text. </td>
</tr>
<tr>
<td><em>string</em></td>
<td>Use the given string to represent the trimmed text. </td>
</tr>
</tbody>
</table>
<p>Two. Multi-line text ellipsis </p>
<div class="cnblogs_code">
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><span style="color: #008080;">1</span> <span style="color: #0000ff;"><</span><span style="color: #800000;">p </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="text2"</span><span style="color: #0000ff;">></span>
<span style="color: #008080;">2</span> <span style="color: #000000;">    这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本
</span><span style="color: #008080;">3</span> <span style="color: #0000ff;"></</span><span style="color: #800000;">p</span><span style="color: #0000ff;">></span>
Copy after login
<span style="color: #800000;">.text2</span>{<span style="color: #ff0000;">
    height</span>:<span style="color: #0000ff;">53px</span>;<span style="color: #ff0000;">
    width</span>:<span style="color: #0000ff;">100px</span>;<span style="color: #ff0000;">
    overflow</span>:<span style="color: #0000ff;"> hidden</span>;<span style="color: #ff0000;">
    text-overflow</span>:<span style="color: #0000ff;"> ellipsis</span>;<span style="color: #ff0000;">
    display</span>:<span style="color: #0000ff;"> -webkit-box</span>;<span style="color: #ff0000;">
    -webkit-line-clamp</span>:<span style="color: #0000ff;"> 3</span>;<span style="color: #ff0000;">
    -webkit-box-orient</span>:<span style="color: #0000ff;"> vertical</span>;
}
Copy after login

I won’t say more about what I said above here.

The height attribute and the overflow attribute are combined here to hide the text under the ellipsis. You can try the effect without adding it and it will be clear at a glance.

The line-clamp attribute is to control how many lines of text are displayed.

About display and box-orient, let’s talk briefly here:

 Note: The display attribute must be defined before the box can be divided.

 The box-orient attribute specifies whether a box child element should be arranged horizontally or vertically.

Value Description
horizontal Specifies that child elements are arranged from left to right on a horizontal line
vertical Arrange child elements vertically from top to bottom
inline-axis Child elements are along the inline axis (mapped to landscape)
block-axis Child elements are along the block coordinate axis (mapped to vertical)
inherit The value of the box-orient attribute should be inherited from the parent element

If you still don’t understand, you can visit the website: http://wenlong883.blog.163.com/blog/static/1718109162011102281912385/ or look at the various CSS attributes in w3c.

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template