2017-09-23 7 views
-1

내가 가진 디자인을 기반으로 종이 입력 스타일을 지정하려고합니다. here으로 묘사 된 사용자 정의 소유권 중 일부는 사용했지만 일부는 작동하지 않습니다.특정 mixin (polymer 2)을 사용하여 용지 입력 스타일을 지정하는 방법은 무엇입니까?

나는 를 사용하여 문제가 --paper 입력 - 용기 라벨--paper 입력 컨테이너 입력 초점.

어쩌면 내가 잘못된 방법을 사용하려고 시도하거나 약간의 추가 단계가 필요할 수 있습니다.

여기 당신이 그것을 당신을 도울하기 어렵다 너무 기대하고있다,하지만 난 확신 한 것은 그것이 당신의 스타일 태그가 너무 지저분의 결과 확실하지 오전 내 코드

<link rel="import" href="../polymer/polymer-element.html"> 
<link rel="import" href="../paper-input/paper-input.html"> 
<link rel="import" href="../paper-input/paper-input-container.html"> 
<link rel="import" href="../iron-icons/iron-icons.html"> 
<link rel="import" href="../iron-icon/iron-icon.html"> 

<dom-module id="first-element"> 
    <template> 
    <style> 
     paper-input { 
     --paper-input-container-color: rgb(64, 64, 64); 
     --paper-input-container-focus-color: rgb(64, 64, 64); 

     --paper-input-container: { 
      border: none; 
      padding: 0px; 
     } 


     --paper-font-subhead: { 
      font-size: 100%; 
     } 

     --paper-input-container-underline-focus: { 
      display: none; 
     } 

     --paper-input-container-underline: { 
      display: none; 
     } 

     --paper-input-container-input: { 
      height: 24px; 
      line-height: 20px; 
      padding: 0 4px; 
      border: 1px solid rgb(194, 198, 199); 
     } 

     --paper-input-container-input-focus: { 
      border-color:red; 
     } 

     --paper-input-container-label { 
      font-weight: bold; 
     }  

     --paper-input-container-invalid-color: red; 
     } 

     :host { 
     display: block; 
     } 
    </style> 

    <paper-input always-float-label label="Floating label"></paper-input> 
    <paper-input label="username"> 
     <iron-icon icon="icons:accessible" slot="prefix"></iron-icon> 
     <div slot="suffix">@email.com</div> 
    </paper-input> 


    </template> 

    <script> 
    class FirstElement extends Polymer.Element { 
     static get is() { return 'first-element'; } 
     static get properties() { 
     return { 
      prop1: { 
      type: String, 
      value: 'first-element' 
      } 
     }; 
     } 
    } 

    window.customElements.define(FirstElement.is, FirstElement); 
    </script> 
</dom-module> 
+0

* * 정확한 * 문제가 있습니까? – juzraai

+0

DOM을 잘못 작성 했습니까? 눈에 띄도록 색상을 변경했으나 회신을 위해 http://plnkr.co/edit/TMeXa7sIyzystv8RI5wb?p=preview – Thad

답변

1

입니다. mixins 뒤에 세미콜론을 써야합니다. 왜냐하면 그들은 css 속성과 같고 모든 CSS 속성은 세미콜론으로 구분되기 때문입니다.
그런 코드를보십시오 :

<style> 
    :host { 
    display: block; 
    } 

    paper-input { 
    --paper-input-container-color: rgb(64, 64, 64); 
    --paper-input-container-focus-color: rgb(64, 64, 64); 

    --paper-input-container: { 
     border: none; 
     padding: 0px; 
    }; 

    --paper-font-subhead: { 
     font-size: 100%; 
    }; 

    --paper-input-container-underline-focus: { 
     display: none; 
    }; 

    --paper-input-container-underline: { 
     display: none; 
    }; 

    --paper-input-container-input: { 
     height: 24px; 
     line-height: 20px; 
     padding: 0 4px; 
     border: 1px solid rgb(194, 198, 199); 
    }; 

    --paper-input-container-input-focus: { 
     border-color: red; 
    }; 

    --paper-input-container-label: { 
     font-weight: bold; 
    }; 

    --paper-input-container-invalid-color: red; 
    } 
</style> 

또 다른 것은, 당신이 초점의 입력의 테두리 색상 스타일을 시도하지만, 또한 당신이 이해가되지 않는 displaynone에 설정된다. display: none을 제거하고 색을 지정하려면 border-color: red;--paper-input-container-underline-focus에 추가해야합니다.

+0

Thx를 참조하십시오. 입력 HTML 요소의 스타일을 지정하려고하는데 밑줄이이 경우에 도움이되지 않으며 입력을 방해해서는 안됩니다. 소유권 끝에 세미콜론이 있지만 편집자 (Visual Studio Code)에서 오류로 표시 했으므로 제거했습니다. – sirbushir

+0

@sirbushir VS 코드에서이 문제가 있었음을 상기하지 않고 일부 linting 또는 html 파서와 같은 일부 옵션을 비활성화하려고합니다. 아마도이 구문이 실제로 w3c 표준의 일부가 아니기 때문에 오류로 보는 이유 일 수 있습니다. 또한 입력 용지의 디자인에 만족하지 않는다면, 내부 동작을 엉망으로 만들지 말고 대신 사용자 지정 요소를 만들어 자신의 것에 충분히 만족시켜야합니다. – user544262772

+0

@sirbushir 에 대한 DOM이 잘못되었습니다. https://www.webcomponents.org/element/PolymerElements/paper-input/elements/paper-input-container와 내 Plunker (원래 게시물의 댓글에 링크되어 있음)를 참조하십시오. 세미콜론에 관해서는, 나는 그들이 "필수적"이라고 믿는다. 나는 그들이 결과에 변화를 주는지 보지 않는다. – Thad