Skip to content

Commit 65859b1

Browse files
authored
Explicitly set display none on dom-* elements (#4821)
1 parent 1a32f4d commit 65859b1

File tree

4 files changed

+64
-0
lines changed

4 files changed

+64
-0
lines changed

lib/elements/dom-bind.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@
6767
}
6868

6969
connectedCallback() {
70+
this.style.display = 'none';
7071
this.render();
7172
}
7273

lib/elements/dom-if.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@
128128

129129
connectedCallback() {
130130
super.connectedCallback();
131+
this.style.display = 'none';
131132
if (this.if) {
132133
this.__debounceRender();
133134
}

lib/elements/dom-repeat.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,7 @@
302302

303303
connectedCallback() {
304304
super.connectedCallback();
305+
this.style.display = 'none';
305306
// only perform attachment if the element was previously detached.
306307
if (this.__isDetached) {
307308
this.__isDetached = false;

test/smoke/dom-if.html

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<!doctype html>
2+
<html>
3+
<head>
4+
<link rel="import" href="../../polymer.html">
5+
</head>
6+
<body>
7+
8+
9+
<dom-module id="my-element">
10+
11+
<template>
12+
<style>
13+
:host {
14+
display: block;
15+
}
16+
.parent {
17+
border: 1px solid red;
18+
justify-content: space-between;
19+
width: 300px;
20+
display: flex;
21+
}
22+
.child {
23+
border: 1px solid green;
24+
width: 100px;
25+
}
26+
</style>
27+
<div class='parent'>
28+
<div class='child'>Child1</div>
29+
<template is='dom-if' if='1'>
30+
<div class='child'>Child2</div>
31+
</template>
32+
</div>
33+
</template>
34+
35+
36+
<!-- Uncomment for class syntax -->
37+
<script>
38+
class MyElement extends Polymer.Element {
39+
static get is() { return 'my-element'; }
40+
static get properties() {
41+
return {
42+
prop: {
43+
type: String
44+
}
45+
}
46+
}
47+
constructor() {
48+
super();
49+
this.prop = 'my-element'
50+
}
51+
}
52+
customElements.define(MyElement.is, MyElement);
53+
54+
</script>
55+
56+
</dom-module>
57+
58+
<my-element></my-element>
59+
60+
</body>
61+
</html>

0 commit comments

Comments
 (0)