如何通过 CSS 在句子开头而不是结尾截断文本?
How to truncate text via CSS at the beginning of a sentence, not the end?
只是想知道这在 CSS 中是否可行。我想为文件上传器截断一些文本,以免它溢出。显示文件名的文本具有以下样式 CSS:
span {
margin-left: 20px;
overflow: hidden;
max-width: 50ch;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
font-style: italic;
background: var(--color-light-gray);
padding: 3px 20px;
border-radius: 8px;
}
使用此代码,如果您上传的文件名称类似于:
Long_file_name_blah_blah_blah.pdf
它会被截断为:
Long_file_name_bl...
这很好,但是因为它是一个文件上传器,所以如果文件扩展名在截断后可见,我更喜欢它,所以我想我想从文件名的开头截断它,这样上面的相同文件看起来像:
...lah_blah_blah.pdf
但是我找不到一种方法来做到这一点 CSS。我可以在 javascript 中做到这一点,但我想知道是否有办法只用 HTML 和 CSS?
谢谢!
您可以添加 direction: rtl;
:
span {
margin-left: 20px;
overflow: hidden;
max-width: 50ch;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
font-style: italic;
background: var(--color-light-gray);
padding: 3px 20px;
border-radius: 8px;
direction: rtl;
}
<span>testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttest.pdf</span>
只是想知道这在 CSS 中是否可行。我想为文件上传器截断一些文本,以免它溢出。显示文件名的文本具有以下样式 CSS:
span {
margin-left: 20px;
overflow: hidden;
max-width: 50ch;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
font-style: italic;
background: var(--color-light-gray);
padding: 3px 20px;
border-radius: 8px;
}
使用此代码,如果您上传的文件名称类似于:
Long_file_name_blah_blah_blah.pdf
它会被截断为:
Long_file_name_bl...
这很好,但是因为它是一个文件上传器,所以如果文件扩展名在截断后可见,我更喜欢它,所以我想我想从文件名的开头截断它,这样上面的相同文件看起来像:
...lah_blah_blah.pdf
但是我找不到一种方法来做到这一点 CSS。我可以在 javascript 中做到这一点,但我想知道是否有办法只用 HTML 和 CSS?
谢谢!
您可以添加 direction: rtl;
:
span {
margin-left: 20px;
overflow: hidden;
max-width: 50ch;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
font-style: italic;
background: var(--color-light-gray);
padding: 3px 20px;
border-radius: 8px;
direction: rtl;
}
<span>testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttest.pdf</span>