【问题标题】:Jquery Widget CSS conflicts with third-party siteJquery Widget CSS 与第三方网站冲突
【发布时间】:2015-02-17 07:10:44
【问题描述】:

我创建了一个用于许多第三方网站的 Jquery 小部件。

我的小部件有它自己的小部件元素 css。独立运行时完​​美运行。

但是当我将我的小部件添加到第 3 方网站时,我的小部件 css 继承或取自第 3 方 CSS。

由于我不了解 3rd 方 css,如何解决此问题?

#my-div * {
    animation : none;
    animation-delay : 0;
    animation-direction : normal;
    animation-duration : 0;
    animation-fill-mode : none;

...
}

【问题讨论】:

    标签: css jquery-widgets


    【解决方案1】:

    将您的 css 限定为小部件的 html。

    例如为您的小部件创建一个包装器:

    <div class="my-widget">
        <!-- Widget Content Here -->
    </div>
    

    然后将小部件中的所有内容设置为 my-widget 类的后代。

    .my-widget .widget-text {
        color: green;
    }
    

    不要用元素设计任何东西 - 所以不要这样做

    p {
        /* Style here */
    }
    

    仅使用所有范围为您的 .my-widget 类的类。

    根据您的评论,如果您仍然遇到问题,您可以在小部件范围内添加重置:

    .my-widget * {
        margin: 0;
        padding: 0;
        border: none;
        font-size: 16px;
        /* Etc */
    }
    

    【讨论】:

    • 你是对的,我也做了同样的事情,但是我没有定义的额外 css 是从第三方网站继承的,我不会他们所以如何处理是吗?
    • 我已经更新了你所说的 CSS:#my-div * { all set to default },但它删除了我的小部件的所有 CSS。我已将它添加到所有 CSS 的顶部。我已经添加了所有这些属性 :: stackoverflow.com/questions/15901030/…
    • 你把reset放在css文件的顶部了吗?请编辑您的问题以显示您正在使用的确切代码。
    • 我已经更新了代码。我没有添加重置。但添加如我的代码所示
    • 我可以通过查看所有代码(HTML 和所有 CSS)来进一步提供帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 2012-04-18
    • 1970-01-01
    • 1970-01-01
    • 2012-08-22
    • 1970-01-01
    相关资源
    最近更新 更多