1

我正在使用 JQUery UI 作为我正在开发的 Rails 应用程序的前端。我正在使用 jQuery 对话框窗口来显示一些选项卡式数据,并且在其中一个选项卡内我想呈现一些图像。

如果我在没有 Javascript 的情况下查看页面,图像的渲染效果很好,但是由于某种原因,当我把它全部放在一个对话框窗口中时,除了我渲染的最后一个图像之外,我从某个地方获得了一些内联样式!

没有对话窗口:

        <img alt="Dsc_0085" class="picture" src="/system/sources/3/normal/DSC_0085.jpg?1260300748" />
        <img alt="Dsc_0006" class="picture" src="/system/sources/4/normal/DSC_0006.jpg?1260301612" />

使用对话窗口:

    <img alt="Dsc_0085" class="picture" src="/system/sources/3/normal/DSC_0085.jpg?1260300748" style="height: 0px; width: 0px; border-top-width: 1px; border-bottom-width: 1px; font-size: 22px; border-left-width: 1px; border-right-width: 1px; display: inline; ">
    <img alt="Dsc_0006" class="picture" src="/system/sources/4/normal/DSC_0006.jpg?1260301612" style="display: inline; ">

我无法弄清楚为什么将图像放入对话框窗口会为它们提供高度和宽度为 0px 的内联样式,有人有什么想法吗?

4

3 回答 3

3

我不知道,但是您可以!important在 CSS 中使用它来覆盖它(对此请仔细检查 IE6)。

您也可以尝试$('img.picture').removeAttr('style')在模态事件中放置类似的东西。

将其作为内联样式非常奇怪display:inline,因为默认情况下图像是内联显示的……但我相信 UI 团队有他们的理由。

于 2009-12-09T16:06:08.417 回答
1

最后,我只是在样式表中使用了 !important 来覆盖 jqueryui 添加的内联样式。不过,我从来没有深入了解为什么要添加它们。

于 2010-03-14T15:32:06.253 回答
0

您可以!important在 CSS 中使用该标志...

例子:

width : 100% !important;

请参阅此问题以获取类似修复: jQuery UI - Autocomplete generated inline style override?

于 2013-04-05T18:23:16.380 回答