html - 通过 CSS attr() 获取属性的第一个/最后一个部分
问题描述
attr()
是否可以在 CSS中仅获取属性的第一部分?我的意思是,在某个字符(主要是空格)之前定位属性的一部分。例如,hello="foo bar"
我想从属性中提取foo
or bar
,只需使用 CSS。
真诚地,我希望答案是“不”,但我不太确定。
解决方案
一般的答案是否定的,但在某些特定情况下,我们可以找到一些技巧。由于您有一个空格作为分隔符,我们可以依靠word-spacing
和/或text-indent
一些溢出来隐藏单词的一部分,然后调整width
.
这是一个例子:
.first:before {
content: attr(data-hello);
word-spacing: 50px;
display: inline-block;
vertical-align: top;
max-width: 40px;
overflow: hidden;
white-space: nowrap;
}
.first:after {
content: attr(data-hello);
text-indent: -60px;
word-spacing:50px;
display: inline-block;
vertical-align: top;
max-width: 40px;
overflow: hidden;
white-space: nowrap;
}
<span class="first" data-hello="foo bar">
some text
</span>
推荐阅读
- html - 为什么我不能显示背景图片?
- java - java中.equals()方法的假设——比较对象的实例或对象的状态
- css - 如何更改数据表列过滤器(日历)的宽度?
- vba - 将数据从用户表单复制到工作表以获取多项数据
- r - 使用因子向量重新排序数据框
- timezone - Salt如何处理不同的时区?
- c++ - 为什么当 int = 0 时 while(int) 结束?
- php - array_merge 返回的空数组将一个空数组与一个填充数组合并
- android - 如何找到导致我的应用程序每次点击越来越慢的原因?
- ios - 无法将“STPPaymentMethodCardParams”类型的值分配给“STPCardParams”类型