【问题标题】:How to use CSS with dynamically inserted elements如何将 CSS 与动态插入的元素一起使用
【发布时间】:2011-07-08 09:58:41
【问题描述】:

如何在现有元素中动态插入具有某些格式的元素 (<ui>)?

例如:

$("#contentDiv").append('<ui id="contentUi">');
$("#contentUi").css({ "text-align": "center", "list-style-type": "none"});
$("#contentDiv").css({ "text-decoration": "none","font-size":" 1.30em","font-weight": 
          "bold"});

这里 #contentDiv 是元素 &lt;div id="contentDiv"&gt; 的 id,我正在向它附加一个新元素 &lt;ui&gt;

第 3 行运行良好,但第 2 行对屏幕没有影响。

【问题讨论】:

  • 为什么不把它全部粘贴到第 3 行呢?为什么第二行有一个#ContentUI,你要附加什么?你需要再解释一下你的问题。
  • 我同意@Tim - 需要更多信息,提供相关(精简)html,我建议您更改标题(不涉及样式表)并标记 jquery 和 javascript
  • 这里的#contentUi 是什么?那元素(“”)到底是什么?你的意思是空字符串还是真实元素? #contentUi 是您要插入的元素吗?
  • 这里一切正常jsfiddle.net/niklasvh/uw7PV

标签: javascript jquery css element dynamic


【解决方案1】:

我认为这里不需要用 jQuery 定义 css。只需在样式表中预定义一个类,这样就更简单了。

举个例子。

$("#contentDiv").append('<ui class="predefined-class">');
$("#contentDiv").addClass('another-predefined-class');

在你的 CSS 中你会有

.predefined-class {
     text-align: center; 
     list-style-type: none;
}

.another-predefined-class {
     text-decoration:none;
     font-size: 1.30em;
     font-weight: bold;
}

我希望这就是你所追求的。

另外我不知道你附加一个空的ul 有多好,因为没有lis 是没有目的的

【讨论】:

    【解决方案2】:

    您将无法将列表样式添加到不存在的元素 &lt;ui&gt;

    改变这一行

    $("#contentDiv").append('&lt;ui id="contentUi"&gt;');

    $("#contentDiv").append('&lt;ul id="contentUi"&gt;');

    注意:uiul

    http://jsfiddle.net/jasongennaro/NKZS3/

    【讨论】:

      猜你喜欢
      • 2023-03-11
      • 1970-01-01
      • 1970-01-01
      • 2013-06-28
      • 2016-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-06
      相关资源
      最近更新 更多