html5-自定义元素属性data-和content的attr用法

<h2 class="h" data-zj="jy">我是自定义的属性</h2>
h2[data-zj="jy"]{
    color:#FFFF33;}
    
h2[data-zj="jy"]:hover:after{
    content:attr(data-zj);
}

1.data-是自定义属性的写法,后面接你的属性名字如:zj。

2.h2[data-zj="jy"]通过CSS3的属性选择器来定义样式。

3.结合:hover:after这两个伪类:让鼠标悬停在元素上面的时候,在其后面显示出自定义的属性值 :ontent:attr(data-zj);

转载于:https://www.cnblogs.com/lufy/archive/2012/05/16/2503910.html

### 如何在CSS选择器或JavaScript中使用`attr()`函数`data-start`属性 #### 在CSS中使用`attr()`函数与`data-start`属性 为了利用`data-start`属性,在CSS中可以通过`attr()`函数获取该属性的值并将其应用于样式。需要注意的是,`attr()`返回字符串类型的值。 ```css [data-start] { content: attr(data-start); } ``` 此代码片段会选取所有带有`data-start`属性元素,并将该属性的值作为伪元素的内容显示出来[^3]。 对于数值型的数据,如宽度、高度等,则需额外指定单位: ```css div::before { content: "Start value is "; } [data-start]::after { content: attr(data-start) "px"; /* 添加像素单位 */ } ``` 上述例子展示了如何组合使用`:before``:after`伪类来展示自定义消息连同`data-start`属性的具体取值。 #### JavaScript中操作`data-start`属性 在JavaScript里,有两种方式处理HTML元素上的`data-*`属性:一种是直接读写dataset对象;另一种则是借助`getAttribute`/`setAttribute`方法。 ##### 方法一:通过`dataset`访问`data-start` 这是最直观的方式之一,适用于现代浏览器支持的情况。 ```javascript const element = document.querySelector("[data-start='5']"); console.log(element.dataset.start); // 输出 '5' element.dataset.start = "10"; console.log(element.getAttribute('data-start')); // 输出 '10' ``` 这段脚本首先选择了具有特定`data-start="5"`属性的一个节点,接着修改了它的值为新的数字[^1]。 ##### 方法二:运用`getAttribute``setAttribute` 当目标环境可能不完全兼容最新的Web标准时,这种方法提供了更好的向后兼容性保障。 ```javascript let elem = document.getElementById("example"); elem.setAttribute("data-start", 7); alert(elem.getAttribute("data-start")); // 显示对话框提示'7' ``` 这里演示了设置新值的过程以及查询现有属性的方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值