Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 尝试重写动态生成的内联样式_Javascript_Html_Css_Styles - Fatal编程技术网

Javascript 尝试重写动态生成的内联样式

Javascript 尝试重写动态生成的内联样式,javascript,html,css,styles,Javascript,Html,Css,Styles,我正在尝试快速修复wordpress网站上出现的问题。问题是汤沙是别人做的,我一直在修。我有一个元素显示在页面的两个不同部分中。第一个是post状态表单,第二次出现在页面上无限期重复的评论添加部分。代码块对注释有效,但对状态表单无效,因此我不想简单地隐藏它,直到我弄清楚如何A)找到生成代码的地方,B)修复问题 该元素有一个在加载该元素时动态应用(假设为javascript)的样式。它从隐藏开始,然后管道下面的某个地方显示出来 下面是我的代码,首先是有效的元素: <div class="ac

我正在尝试快速修复wordpress网站上出现的问题。问题是汤沙是别人做的,我一直在修。我有一个元素显示在页面的两个不同部分中。第一个是post状态表单,第二次出现在页面上无限期重复的评论添加部分。代码块对注释有效,但对状态表单无效,因此我不想简单地隐藏它,直到我弄清楚如何A)找到生成代码的地方,B)修复问题

该元素有一个在加载该元素时动态应用(假设为javascript)的样式。它从隐藏开始,然后管道下面的某个地方显示出来

下面是我的代码,首先是有效的元素:

<div class="activity-comments">
  <div class="audio_controls fresh" style>
    ....
  </div>
</div>

....
断开的块:

<div id="whats-new-post-in-box">
  <div class="audio_controls fresh" style="display: block;">
    ...
  </div>
<div>

...
因此,在第一个块中,代码中没有样式,出于某种奇怪的原因,无论是谁编写了它,都没有应用任何样式(完全愚蠢且格式错误的代码)。但是在第二个元素中,也就是断开的元素中,有一个display:block在运行时动态写入。我试图找出如何强制它显示:无。我尝试过js,但不知怎么的,我没有正确地调用它(不确定如何调用嵌套元素,我只想要嵌套ID中的audio_控件,而不想要其他类)


有人对我有什么想法吗?

你可以使用CSS:

#whats-new-post-in-box > .audio_controls.fresh {
    display: none !important;
}
一个
!重要信息
样式规则可以覆盖内联样式规则(除非内联样式规则也是
!重要信息

或者,在启用JavaScript的情况下:


显然,对于这两个JS解决方案,您需要在设置样式之后运行代码…

您可以使用CSS:

#whats-new-post-in-box > .audio_controls.fresh {
    display: none !important;
}
一个
!重要信息
样式规则可以覆盖内联样式规则(除非内联样式规则也是
!重要信息

或者,在启用JavaScript的情况下:


显然,对于这两个JS解决方案,您需要先运行设置样式的代码…

非常确定您可以为
#What's new post in box
.audio\u控制
并用
标记它!重要信息

非常确定您可以为
#What's new post in box
编写CSS规则。音频控制
并用
标记它!重要信息

隐藏内部div的另一种方法,这需要jQuery:

$('div.audio_controls', $('#whats-new-post-in-box')).hide();

此代码选择id为
whats new post in box
的元素内所有具有
audio\u控件的div元素,并将其隐藏。

隐藏内部div的另一种方法,这需要jQuery:

$('div.audio_controls', $('#whats-new-post-in-box')).hide();

此代码选择id为
whats new post-in-box
的元素内具有
audio\u控件的所有div元素,并将其隐藏。

document.getElementById('whats-new-post-in-box')。children.removeAttribute('style')
,如果您不想使用
转到CSS方向!重要信息
。如果您试图只隐藏前面的所有注释,我会这样做#框中有什么新帖子。音频控件{display:none!important}然后按照这个,框中有什么新帖子。音频控件:第一个子控件{display:block!important}。这样,只有第一条评论才会显示出来。这可能会有所帮助。此外,检查注释框中的注释是否正确关闭,并将_仅设置为1。我会在wordpressoverflow上发布这个问题,他们可能会帮助您解决这个问题。@plantheidea:我希望您会发现
NodeList
s/
HTMLCollection
s没有
removeAttribute
方法。啊,很抱歉,忘记了标识符:
document.getElementById('whats-new-post-in-box')。children[0].removeAttribute('styl‌​e')
document.getElementById('whats-new-post-in-box')。children.removeAttribute('style')
,如果您不想使用
转到CSS方向!重要信息
。如果您试图只隐藏前面的所有注释,我会这样做#框中有什么新帖子。音频控件{display:none!important}然后按照这个,框中有什么新帖子。音频控件:第一个子控件{display:block!important}。这样,只有第一条评论才会显示出来。这可能会有所帮助。此外,检查注释框中的注释是否正确关闭,并将_仅设置为1。我会在wordpressoverflow上发布这个问题,他们可能会帮助您解决这个问题。@plantheidea:我希望您会发现
NodeList
s/
HTMLCollection
s没有
removeAttribute
方法。啊,很抱歉,忘记了标识符:
document.getElementById('whats-new-post-in-box')。children[0].removeAttribute('styl‌​e')
CSS工作得很好,直到我在IE中测试,在IE中它不工作。当我使用wordpress网站时,我发现自己使用的是
!重要信息
越来越多。。。这很有帮助,但有一点让我感到害怕。事实上,我找到了它不起作用的原因,我找到了一个“海关”样式表,并把它扔了进去。很好的提示,谢谢!顺便说一句,我讨厌wordpress。CSS工作得很好,直到我在IE中测试,在IE中它不工作。当我使用wordpress网站时,我发现自己在使用
!重要信息
越来越多。。。这很有帮助,但有一点让我感到害怕。事实上,我找到了它不起作用的原因,我找到了一个“海关”样式表,并把它扔了进去。很好的提示,谢谢!顺便说一句,我讨厌wordpress。