请教一个html5shiv源码插入样式的问题
阅读html5shiv源码的时候,对addStyleSheet函数添加样式的方式有些困惑,特来请教
源码如下:
function addStyleSheet(ownerDocument, cssText) {
var p = ownerDocument.createElement('p'),
parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement;
p.innerHTML = 'x';
return parent.insertBefore(p.lastChild, parent.firstChild);
}
不清楚这里为什么要把style样式添加到p标签中,并且前面带有x字母。
我的想法是可以直接创建style元素,然后把style插入到head中。
function addStyleSheet(ownerDocument, cssText) {
var style = ownerDocument.createElement('style'),
parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement;
style.innerHTML = cssText;
return parent.insertBefore(style, parent.firstChild);
}
不知道源码中的做法是不是出于兼容性或其他方面的考虑,还请赐教,谢!
相关阅读:
如何实现Android透明导航栏(Translucent Navigation Bar)?
linux 编译php 的时候 ./buildconf --force 这句是干嘛用的?
$this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length 什么意思?
websocket是怎样实现NAT穿透的
Mountain lion下Java Preference(Java偏好设置)应用丢失
HTTP 报文创建时间 Date 为什么不是当前时间
android仿微信的朋友圈功能的数据上传
在c語言中用malloc分配內存的問題
ajax分页使用场景
c++类模板使用
nodejs 中 EventEmitter 和 Promise 性能比较
iOS工程中如何将一个工程导入到另一个工程中作为子模块?
angular JS里面用angular.injector获取的服务应该是哪些服务呢?是官方文档里面的service吗?
python 3.4中,'gbk' codec can't decode byte 0x80 in position 0
UUID中中的名字和名字空间代表什么?如何获得?
phpstorm折叠指定层级代码的快捷键
搜狐视频调用代码
怎么将java中list中的数据序列化到数据库中,方便存取?
Flask框架如何直接获取POST请求的JSON原始数据?
wpa_supplicant连不上WIFI,请问如何解决