如果样式所引用的元素尚未生成,是否可以从页面的外部CSS获取值?(该元素将动态生成)。
我见过的jQuery方法是$('element').css('property');
,但这依赖于element
页面上。有没有办法找出CSS中属性设置为什么,而不是元素的计算样式?
我是否需要做一些丑陋的事情,例如在页面上添加元素的隐藏副本,以便可以访问其样式属性?
使用jQuery:
// Scoping function just to avoid creating a global
(function() {
var $p = $("<p></p>").hide().appendTo("body");
console.log($p.css("color"));
$p.remove();
})();
p {color: blue}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
直接使用DOM:
// Scoping function just to avoid creating a global
(function() {
var p = document.createElement('p');
document.body.appendChild(p);
console.log(getComputedStyle(p).color);
document.body.removeChild(p);
})();
p {color: blue}
注意:
在这两种情况下,如果要加载外部样式表,都将等待它们加载,以查看它们对元素的影响。jQuery的事件ready
和DOM的DOMContentLoaded
事件都没有做到这一点,您必须通过监视它们的加载来确保它。
本文向大家介绍HTML 外部CSS样式表,包括了HTML 外部CSS样式表的使用技巧和注意事项,需要的朋友参考一下 示例 标准做法是将CSS<link>标签放在<head>HTML顶部的标签内。这样,将首先加载CSS,并将在加载页面时将其应用于您的页面,而不是在加载CSS之前显示无样式的HTML。该type属性在HTML5中不是必需的,因为HTML5通常支持CSS。 和 ...在HTML5中做同样
问题内容: 如何通过jQuery从CSS类访问属性?我有一个CSS类,如: 我需要对一个对象进行彩色动画处理: 这样我就可以从CSS 更改为,并且动画将按照CSS进行工作。 一种方法是在类中放置一个不可见的元素,然后获取要在动画中使用的元素的颜色,但是我想这是非常非常糟糕的做法。 有什么建议么? 问题答案: 我编写了一个小函数,该函数遍历文档上的样式表以查找匹配的选择器,然后查找样式。 需要注意的
问题内容: 我知道这会给我innerHtml。我还需要它的样式(可以通过类的方式定义),可以是内联属性,也可以是单独标签中的所有样式/类。 可能吗? 更新 如果HTML类似于HTML 并且在外部样式表中定义了CSS类,该怎么办? UPDATE 2 对不起,您没有在此澄清 如果这是我的HTML 样式在单独的样式表或头部样式中定义。 然后,当我尝试获取的内部html 或调用任何其他自定义函数时,我需要
问题内容: 我正在做的事情很简单。 您单击一个按钮,它将打开一个div ,该div 向下滑动并列出主题。(目前我只有两个) 现在,在加载网站时,将加载style1.css(主主题/原始主题) 现在,我要弄清楚的是…当单击灰度按钮以将样式表从style1.css更改为style2.css时,如何拥有它(注意:文件位于同一目录中) 任何帮助将非常感激。 问题答案: $(‘#grayscale’).cl
问题内容: 是否可以像使用文本一样使用CSS为外部.svg设置样式?我想念什么?我的标记和CSS看起来像这样: 问题答案: 如果像引用标签一样通过引用外部文件来包含svg图像,则svg图像中的元素将不包含在主文档DOM树中。他们组成了自己的树。因此,外部图像中的元素无法通过主文档中的CSS选择器进行匹配。 您可以像大多数其他元素一样设置元素的样式,例如为其设置边框。但是您不能(至少这样)访问外部图
问题内容: 我有几个SVG图形,我想通过我的外部样式表修改颜色,而不是直接在每个SVG文件中修改。我不是将图形插入行中,而是将它们存储在我的图像文件夹中并指向它们。 我以这种方式实现了它们,以使工具提示能够正常工作,并且我还将每个工具提示都包装在标签中以允许链接。 这是SVG图形的代码: 我将以下内容放入我的外部CSS文件(main.css)中: 但是,它对图形没有影响。我还尝试了.socIcon