html - 如何在自定义元素 (Polymer 1.0) 内设置纸张元素的样式?

标签 html css polymer polymer-1.0

无论我做什么,我似乎都无法使用自定义元素内的自定义属性来设置纸张元素的样式:

<dom-module id="ts-dashboard">
  <style>
      :host {
         display: block;
          --paper-tabs-selection-bar-color : #ED1C23;
      }
      paper-tabs {
         background-color : #962E33;
      }
  </style>
  <template>
    <paper-tabs selected="{{selected}}">
        <paper-tab>Choice 1</paper-tab>
        <paper-tab>Choice 2</paper-tab>
    </paper-tabs>
    <!-- some more elements... -->
  </template>
</dom-module>
<script>
   //Module definition here
</script>

但是没有考虑--paper-tabs-selection-bar-color,我最终得到了默认的黄色而不是亮红色。

值得注意的是,我使用 Shadow-dom 而不是 shady-dom,但切换回 shady 实现并没有改变任何东西。我还使用主题文件作为 html 导入来设置 --default-primary-color 和其他此类自定义属性。这些似乎在 :root{ } css 属性内有效,但即使我将 --paper-tabs-selection-bar-color : #ED1C23; 放在那里它也不起作用。

我尝试过使用 paper-input-controller 但样式也没有应用。知道我在这里做错了什么吗?

最佳答案

我使用导入外部样式表,例如:

<dom-module id="ts-dashboard">
  <link rel="import" type="css" href="ts-dashboard.css">
  <template>
    <paper-tabs selected="{{selected}}">
        <paper-tab>Choice 1</paper-tab>
        <paper-tab>Choice 2</paper-tab>
    </paper-tabs>
    <!-- some more elements... -->
  </template>
</dom-module>
<script>
   //Module definition here
</script>

那么这应该可以工作:

paper-tabs {
    --paper-tabs-selection-bar-color: #ED1C23;
}

(更新:刚刚意识到我粘贴了错误。已修复我的外部 CSS 文件中的内容)

关于html - 如何在自定义元素 (Polymer 1.0) 内设置纸张元素的样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30801707/

相关文章:

javascript - 戈朗 : html pages and GO communication

html - 列表中的图像列表

css - 背景图像不会在 Internet Explorer 中居中

if-statement - 如何使用 "dom-if"在 polymer1.0 中写入条件?

polymer - 部署使用 Polymer 入门套件创建的网站?

javascript - 自定义元素/Web 组件可以与 SVG 一起使用吗?

html - 了解 CSS 选择器优先级/特异性

javascript - async=true 用于 css 链接标签

javascript - 如何使用 JavaScript 访问嵌套在 "a"中的 "td"的标题或文本?

html - 无法通过 CSS 使图像移动