javascript - 在带有日期类型的纸张输入中使用时,在 Polymer 中设置日期选择器的样式

标签 javascript css webkit polymer

在我的 Polymer 元素中,我正在尝试构建一个让用户选择日期的高级搜索。我创建了一个带有日期类型的纸张输入。 显然,日期选择器没有使用 Material 设计,但是当我尝试设置样式时,什么也没有发生。

我正在使用 WebKit 提供的这 8 个伪元素来自定义日期输入的文本框。 8 pseudo-elements
以下是我尝试过的两种方式。我可能做错了什么,或者是 Polymer 不支持 webkit。

<link rel="import" href="../../bower_components/polymer/polymer.html">
<link rel="import" href="../../bower_components/webcomponentsjs/webcomponents-lite.min.js">
<link rel="import" href="../../bower_components/paper-input/paper-input.html">

<dom-module id="my-datepicker">
  <template>

    <style>
      :host {
        display: block;
      }
      paper-input ::content input::-webkit-datetime-edit-month-field{
        color: blue;
      }
      paper-input ::content input::-webkit-inner-spin-button {
        display: none;
      }
    </style>
    <style>
      paper-input ::content input::-webkit-datetime-edit-month-field{
        color: blue;
      }
      paper-input ::content input::-webkit-inner-spin-button {
        display: none;
      }
    </style>

    <!-- Paper Input with date Picker -->
    <paper-input label="Search a Date of Birth" type="date" always-Float-Label></paper-input>

  </template>
  <script>

    Polymer({

      is: 'my-datepicker',
      properties: {

      },

   });

  </script>
</dom-module>

最佳答案

有一种方法可以设置日期输入的样式,但您必须访问 <paper-input>的本地 DOM,即分发的内容。使用 ::content 非常简单伪元素(请参阅文档中的 Styling local DOM 指南)。

<style>
  paper-input ::content input::-webkit-datetime-edit-month-field{
    color: blue;
  }
  paper-input ::content input::-webkit-inner-spin-button {
    display: none;
  }
</style>

据我所知,这是一个 Shady-DOM 问题,在未来的 Polymer 版本中可能会发生变化。

编辑: 这是一个 working JSBin ,其中月份以蓝色显示,内部微调按钮被隐藏。

关于javascript - 在带有日期类型的纸张输入中使用时,在 Polymer 中设置日期选择器的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39688177/

相关文章:

javascript - Jquery-如何在这里使用包含?

javascript - 为什么我不能将多行值存储到 JavaScript 文字中?

javascript - 使用航点调整大小问题的粘性导航

javascript - ionic 2/3 ;单击时更改图像 src 标签

html - <li> 成员在鼠标悬停在另一个 <li> 成员上时移动

css - WebKit 的 Internet Explorer 兼容样式表?

javascript - 在 Chrome 的 Worker 中使用 `console.log` 会打印两次相同的消息

javascript - 如何在生产环境中加载 minify css

javascript - HTML/CSS - 无论文本内容如何,​​所有文本元素都是 23 像素宽

jquery - webkit 滚动条使用 jQuery.css() 方法