我遇到一个问题,我需要能够根据它们是否嵌套在特定的 div 中来更改一系列 div 以使用“显示:内联”,但是我无法确定如何选择所有子 - div。也许有一种简单的 CSS 方法可以实现这一点,但我会更详细地描述这个问题。
我有一个使用控件套件的 Web 应用程序,我没有编程访问权限来更改控件使用的类/结构,但最终它们会输出 HTML、JavaScript 等并进入 DOM .该套件将控件包装在一个 div 中,该 div 被解释为 block div(因为未指定 display:value),这会在图像或图标显示在控件旁边的情况下导致问题,例如一个帮助图标,因为 div 默认呈现为 block 而不是内联。站点的其余部分仍然需要将 div 视为 block 。
有没有办法让添加的div添加style="display: inline;"它试图通过 jQuery 或 CSS 包装的所有元素?
在下面的示例中,通常需要将 ctl00_ContentPlaceHolder1_Area 内/下方的所有 div 更改为显示:内联,但更具体地说,以 ctl00_ctl00_ContentPlaceHolder1_* 开头且位于名为 ctl00_ContentPlaceHolder1_Area 的 div 内的 div。
<div id="ctl00_ContentPlaceHolder1_Area"><div id="ctl00_ctl00_ContentPlaceHolder1_TextBox1Panel">
<input name="ctl00$ContentPlaceHolder1$TextBox1" type="text" onchange="javascript:setTimeout('WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$ContentPlaceHolder1$TextBox1", "", true, "", "", false, true))', 0)" onkeypress="if (WebForm_TextBoxKeyHandler(event) == false) return false;javascript:$radIE.keyPress(event);" id="ctl00_ContentPlaceHolder1_TextBox1" class="RadInputMgr_Office2007 RadInput_Enabled_Office2007" onmouseover="javascript:$radIE.mouseOver(event);" onmouseout="javascript:$radIE.mouseOut(event);" onblur="javascript:$radIE.blur(event);" onfocus="javascript:$radIE.focus(event);" />
</div> <img src="icon.png" alt="Small Image Icon"></div>
最佳答案
尝试:
#ctl00_ContentPlaceHolder1_Area div[id^="ctl00_ctl00_ContentPlaceHolder1_"] {
display: inline !important
}
如果可行,请查看它是否可以在没有 !important
的情况下运行,这是不好的做法。
关于jquery - 如何更改命名 div 中的嵌套 div 以显示为显示 :inline using CSS or jQuery selectors?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5303842/