text-overflow
åºçº¿
广æ³å¯ç¨
*
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
* æ¤ç¹æ§çæäºé¨åçæ¯æç¨åº¦å¯è½ææä¸åã
text-overflow CSS 屿§ç¨äºç¡®å®å¦ä½æç¤ºç¨æ·åå¨éèçæº¢åºå
容ãå
¶å½¢å¼å¯ä»¥æ¯è£åªãæ¾ç¤ºä¸ä¸ªçç¥å·ï¼ââ¦âï¼ææ¾ç¤ºä¸ä¸ªèªå®ä¹å符串ã
å°è¯ä¸ä¸
text-overflow: clip;
text-overflow: ellipsis;
text-overflow: "-";
text-overflow: "";
<section id="default-example">
<div id="example-element-container">
<p id="example-element">"Is there any tea on this spaceship?" he asked.</p>
</div>
</section>
#example-element-container {
width: 100%;
max-width: 18em;
}
#example-element {
line-height: 50px;
border: 1px solid #c5c5c5;
overflow: hidden;
white-space: nowrap;
font-family: sans-serif;
padding: 0 0.5em;
text-align: left;
}
text-overflow 屿§å¹¶ä¸ä¼å¼ºå¶â溢åºâäºä»¶çåçï¼å æ¤ä¸ºäºè½è®©ææ¬è½å¤æº¢åºå®¹å¨ï¼ä½ éè¦å¨å
ç´ ä¸æ·»å å 个é¢å¤ç屿§ï¼overflow å white-spaceãä¾å¦ï¼
overflow: hidden;
white-space: nowrap;
text-overflow 屿§åªå¯¹é£äºå¨å级å
ç´ æº¢åºçå
容ææï¼ä½æ¯å¿
é¡»è¦ä¸å级å
ç´ å
èï¼inlineï¼æ¹åä¸è´ï¼ä¸¾ä¸ªåä¾ï¼ææ¬æ æ³å¨çåç䏿¹æº¢åºï¼ã
è¯æ³
text-overflow 屿§å¯è½è¢«èµäºä¸ä¸ªæè
两个å¼ã妿èµä¸ä¸ªå¼ï¼æçè¡æ«æº¢åºè¡ä¸ºï¼ä»å·¦è³å³çææ¬å³æ«ç«¯ï¼ä»å³è³å·¦çææ¬å·¦æ«ç«¯ï¼ã妿èµä¸¤ä¸ªå¼ï¼ç¬¬ä¸ä¸ªå¼æå®è¡å·¦ç«¯æº¢åºè¡ä¸ºï¼ç¬¬äºä¸ªå¼æå®è¡å³ç«¯æº¢åºè¡ä¸ºã
text-overflow: clip;
text-overflow: ellipsis ellipsis;
text-overflow: ellipsis " [..]";
/* Global values */
text-overflow: inherit;
text-overflow: initial;
text-overflow: revert;
text-overflow: revert-layer;
text-overflow: unset;
- å
³é®åä¹ä¸ï¼
clipãellipsisãfade - 彿°
fade()ï¼ä¼ å ¥<length>æ<percentage>æ¥æ§å¶æ·¡åºè·ç¦» - ä¸ä¸ªå符串
<string>ã
å¼
clip-
é»è®¤å¼ãè¿ä¸ªå ³é®åä¼å¨å 容åºåçæé夿ªæææ¬ï¼å æ¤å¯è½ä¼å¨åè¯çä¸é´åçæªæãå¦æä½ çç®æ æµè§å¨æ¯æ
text-overflow: ''ï¼ä¸ºäºè½å¨ä¸¤ä¸ªåè¯è¿æ¸¡å¤æªæï¼ä½ å¯ä»¥ä½¿ç¨ä¸ä¸ªç©ºå符串å¼ï¼''ï¼ä½ä¸ºtext-overflow屿§çå¼ã ellipsis-
è¿ä¸ªå ³é®åä¼ç¨ä¸ä¸ªçç¥å·ï¼
'â¦'ãU+2026 HORIZONTAL ELLIPSISï¼æ¥è¡¨ç¤ºè¢«æªæçææ¬ãè¿ä¸ªçç¥å·è¢«æ·»å å¨å 容åºåä¸ï¼å æ¤ä¼åå°æ¾ç¤ºçææ¬ãå¦æç©ºé´å¤ªå°ä»¥è³äºè¿çç¥å·é½å®¹çº³ä¸ä¸ï¼é£ä¹è¿ä¸ªçç¥å·ä¹ä¼è¢«æªæã <string>-
<string>ç¨æ¥è¡¨ç¤ºè¢«æªæçææ¬ãå符串å 容å°è¢«æ·»å å¨å 容åºåä¸ï¼æä»¥ä¼åå°æ¾ç¤ºåºçææ¬ãå¦æç©ºé´å¤ªå°ä»¥è³äºè¿å符串æ¬èº«é½å®¹çº³ä¸ä¸ï¼é£ä¹è¿ä¸ªå符串ä¹ä¼è¢«æªæã fade-
è¿ä¸ªå ³é®åå°ä¼æªæè¡å æº¢åºææ¬å¹¶å¨å®å ¨éæçè¡è¾¹ç¼æ·»å ä¸ä¸ªæ·¡åºç¹æã
fade( <length> | <percentage> )-
è¿ä¸ªå½æ°å°ä¼æªæè¡å æº¢åºææ¬å¹¶å¨å®å ¨éæçè¡è¾¹ç¼æ·»å ä¸ä¸ªæ·¡åºç¹æã åæ°å³å®æ·¡åºç¹æçè·ç¦»ã
<percentage>以è¡å®½èå®ãå°äº0çå¼è§ä¸º 0ã大äºè¡å®½çå¼è§ä¸ºè¡å®½ã
å½¢å¼å®ä¹
| åå§å¼ | clip |
|---|---|
| éç¨å ç´ | åºå容å¨å ç´ |
| æ¯å¦æ¯ç»§æ¿å±æ§ | å¦ |
| 计ç®å¼ | as specified |
| å¨ç»ç±»å | 离æ£å¼ |
å½¢å¼è¯æ³
text-overflow =
[ clip | ellipsis | <string> | fade | <fade()> ]{1,2}
<fade()> =
fade( [ <length-percentage> ] )
<length-percentage> =
<length> |
<percentage>
示ä¾
>åå¼è¯æ³
è¿ä¸ªç¤ºä¾åç°äºå°ä¸åç text-overflow å¼åºç¨å°ä¸ä¸ªæ®µè½ä¸é¢ï¼å¨ä»å·¦å°å³çææ¬åä»å³å°å·¦çææ¬ä¸çææã
HTML
<div class="ltr">
<h2>Left to right text</h2>
<pre>clip</pre>
<p class="overflow-clip">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
<pre>ellipsis</pre>
<p class="overflow-ellipsis">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
<pre>" [..]"</pre>
<p class="overflow-string">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
</div>
<div class="rtl">
<h2>Right to left text</h2>
<pre>clip</pre>
<p class="overflow-clip">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
<pre>ellipsis</pre>
<p class="overflow-ellipsis">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
<pre>" [..]"</pre>
<p class="overflow-string">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
</div>
CSS
p {
width: 200px;
border: 1px solid;
padding: 2px 5px;
/* Both of the following are required for text-overflow */
white-space: nowrap;
overflow: hidden;
}
.overflow-clip {
text-overflow: clip;
}
.overflow-ellipsis {
text-overflow: ellipsis;
}
.overflow-string {
text-overflow: " [..]";
}
body {
display: flex;
justify-content: space-around;
}
.ltr > p {
direction: ltr;
}
.rtl > p {
direction: rtl;
}
ç»æ
åå¼è¯æ³
è¿ä¸ªç¤ºä¾å±ç°äº text-overflow çåå¼è¯æ³ï¼ä½ å¯ä»¥ä¸ºææ¬çå¼å¤´åæ«å°¾å®ä¹ä¸åçæº¢åºè¡ä¸ºã为äºåç°è¿ä¸ªææï¼æä»¬ä¸å¾ä¸ä½¿è¡æ»å¨ï¼è¿æ ·è¡å¼å¤´ä¹è¢«éèäºèµ·æ¥ã
HTML
<pre>clip clip</pre>
<p class="overflow-clip-clip">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
<pre>clip ellipsis</pre>
<p class="overflow-clip-ellipsis">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
<pre>ellipsis ellipsis</pre>
<p class="overflow-ellipsis-ellipsis">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
<pre>ellipsis " [..]"</pre>
<p class="overflow-ellipsis-string">
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</p>
CSS
p {
width: 200px;
border: 1px solid;
padding: 2px 5px;
/* Both of the following are required for text-overflow */
white-space: nowrap;
overflow: scroll;
}
.overflow-clip-clip {
text-overflow: clip clip;
}
.overflow-clip-ellipsis {
text-overflow: clip ellipsis;
}
.overflow-ellipsis-ellipsis {
text-overflow: ellipsis ellipsis;
}
.overflow-ellipsis-string {
text-overflow: ellipsis " [..]";
}
JavaScript
// Scroll each paragraph so the start is also hidden
const paras = document.querySelectorAll("p");
for (let para of paras) {
para.scroll(100, 0);
}
ç»æ
è§è
| è§è |
|---|
| CSS Overflow Module Level 3 > # text-overflow > |
| Scalable Vector Graphics (SVG) 2 > # TextOverflowProperty > |
æ¤æ¥å£çè¾æ©çæ¬æ¾ç»è¢«çº³å ¥åéæ¨èæ åï¼Candidate Recommendationï¼ååãä½ç±äºéè¦å¯¹æäºå°æªååºçé£é©ç¹è¿è¡ç§»é¤å·¥ä½ï¼å æ¤è¯¥è§èå·²é级å°å·¥ä½èæ¡ãæä»¥è¯´æµè§å¨æ åç¼å°å®ç°æ¤å±æ§ï¼ä½å ¶å´ä¸å¨åéæ¨èæ åé¶æ®µã
æµè§å¨å ¼å®¹æ§
åè§
- ç¸å
³ CSS 屿§ï¼
overflowãwhite-space - æ§å¶æ¢è¡ç CSS 屿§ï¼
overflow-wrapãword-break