标签:position css javascript css-position
实际上,我需要在JS中进行的操作是将所有绝对定位的元素下移x个像素.我是否需要遍历每个元素并尝试确定它们的位置是否绝对?或者,还有更好的方法?
谢谢,
马拉
更新:特定:我正在使用小书签将JS注入到任何页面上-因此,我无法以任何方式更改标记或实际的CSS文件.除其他事项外,此小书签应将所有绝对定位的元素下移155个像素.
解决方法:
这样的事情应该做到:
function getStyle(el, prop) {
var doc = el.ownerDocument, view = doc.defaultView;
if (view && view.getComputedStyle) {
return view.getComputedStyle(el, '')[prop];
}
return el.currentStyle[prop];
}
var all = document.getElementsByTagName('*'), i = all.length;
while (i--) {
var topOffset = parseInt(all[i].style.top, 10);
if (getStyle(all[i], 'position') === 'absolute') {
all[i].style.top = isNaN(topOffset) ? '155px' : (topOffset + 155) + 'px';
}
}
标签:position,css,javascript,css-position 来源: https://codeday.me/bug/20191024/1920429.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。