【问题标题】:List on different websites looks different不同网站上的列表看起来不同
【发布时间】:2016-01-21 14:22:30
【问题描述】:

我有一个问题,我不明白。

在一个域上我得到了代码:

$(document).ready(function() {
    $('#example2 ul').click(function() {
        var href = $(this).find("a").attr("href");
        if(href) {
    	    alert(href);
    	    return false;
    	    window.location = href;
       }
    });
});
table#example2 {
	border-collapse: collapse;	
}
ul:nth-child(even) {
    background-color: #f1f1f1;
}
ul:nth-child(odd) {
background-color: #fff;
}
#example2 ul:hover {
	background-color: #ccc;
}
#example2 li {
  display: inline;
  padding-top: 3px;
  padding-right: 5px;
  padding-left: -30px;
  list-style-type: none;
}
#example2 ul:hover {
	cursor: pointer;
}
#example2 ul {
    list-style:none;
    padding-left:0;
    margin-left: -40px;
}
<div style="overflow:auto;height:150px;border: 2px solid grey;">
  <ul id="example2" style="width:100%">
      <ul>
        <li style="padding-left:10px"><a href="http://www.w3schools.com">AAAAAAAA</a></li>
        <li>BBBBBBBBBBB</li>
        <li>CCCCCC</li>
      </ul>
      <ul>
        <li style="padding-left:10px"><a href="http://www.w3schools.com">AAAAAAAA</a></li>
        <li>BBBBBBBBBBB</li>
        <li>CCCCCC</li>
      </ul>
      <ul>
        <li style="padding-left:10px"><a href="http://www.w3schools.com">AAAAAAAA</a></li>
        <li>BBBBBBBBBBB</li>
        <li>CCCCCC</li>
      </ul>
</div>

完美运行。看起来像:

但如果我现在想在另一个域上使用它——我复制并粘贴它——但它不起作用。甚至没有悬停效果。 它看起来像这样:


想是问题吗?似乎我的 css 要求被“用户代理样式表”覆盖。 这是什么意思,我该如何解决?

如何定义css命令只修改列表(表)的li和ul,而不是整个站点的uls和lis?希望有人能救我。非常感谢。

【问题讨论】:

  • 确保你已经包含了 jQuery
  • 应用了用户代理样式,因为没有其他东西可以应用。现在检查你的控制台,我猜你的文件路径(jq/css)是错误的......
  • 您的样式表在您的 html 上不起作用,请确保将其包含在页面顶部。
  • 你也有一些无效的标记。你有 &lt;ul id="example2"&gt; 没有结束标签,另一个直接的 &lt;ul&gt; 嵌套在里面。您应该将其包装在 &lt;li /&gt;
  • 我将 css-commands 直接插入到 wordpress 页面本身的顶部。在 wordpress header.php 中我添加了:

标签: javascript jquery html css list


【解决方案1】:

当您说不同的“域”时,您的意思是“site1.com”和“site2.com”吗?如果是,请确保您包含的脚本支持跨域请求 (CORS)。

您看到 box-sizing 样式被划掉的原因是因为 chrome 支持无前缀属性,因此它忽略了供应商前缀属性。

如果您遇到页面在不同浏览器中看起来不同的问题,请在您的自定义 CSS 之前插入重置或规范化样式表,这将使不同浏览器中的所有样式相同。最受欢迎的资源之一是https://github.com/necolas/normalize.css/。此外,使用 W3C 验证器确保您的 HTML 有效,一些浏览器会优雅地处理无效代码,而其他浏览器则不会。

【讨论】:

  • 是的,我将它从 a.com 复制到了 b.com。该脚本是/应该只是通过单击一行来打开一个链接。但我想知道为什么它在 wordpress 一侧有效,而在另一侧无效——即使我只是复制。什么是用户代理样式表?
  • Chrome 中的网站具有默认样式,Firefox 和 Internet Explorer 等也有。重置或规范化样式表使这些样式在浏览器中保持一致。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-10
  • 2023-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多