CSS 不适用于使用 JavaScript 从 XML 导入的 div 元素

css does not work on div elements imported from xml using javascript

提问人:Gigi 提问时间:4/22/2023 更新时间:4/22/2023 访问量:36

问:

使用打字稿,我尝试从 xml 结构开始插入一些元素。真正的xml很大,来自后端,但为了过度简化,我尝试了如下方法:

let xmlSource = '<divr><div>recA</div><div>recB</div></divr>';
let xml2 = $.parseXML(xmlSource);
$(`#${this.someTextBoxId}`).append([].slice.call(xml2.getElementsByTagName('divr')[0].childNodes));

因此,我在页面中只有标准的、可识别的“div”元素。问题是我不能在这些 div 上使用 css?!正如我所怀疑的那样,它们一个接一个地插入

display: inline

但我需要它们一个接一个地出现,所以我需要'display: block'。事实上,似乎没有 css 对它们起作用。我不仅无法以编程方式做到这一点,而且也无法从控制台或Chrome开发人员工具中工作。在开发人员工具中,对于这些,我什至看不到通常的部分:

element.style{
}

div {                  user agent stylesheet
}

我强调,这只发生在那些 div 上。对于其他元素,css 工作得很好。作为一个实验,如果我尝试

$(`#${this.someTextBoxId}`).append(xmlSource);

它有效,CSS可用。

因此,我需要一种方法来使css在这种情况下工作,或者需要另一种方法来导入/插入xml。也许,首先将其转换为字符串?!

JavaScript jQuery CSS TypeScript XML

评论

0赞 ThW 4/28/2023
您的问题缺少细节,因此不可重现。我实现了一个没有jQuery的基本工作示例:jsfiddle.net/0ouxmaqg 您应该使用编辑器中的“snippet”函数来包含示例。

答: 暂无答案