117 lines
2.6 KiB
HTML
117 lines
2.6 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Inspector (empty page)</title>
|
|
<script>
|
|
"use strict";
|
|
|
|
window.onload = function() {
|
|
customElements.define("test-empty", class extends HTMLElement {
|
|
constructor() {
|
|
super();
|
|
this.attachShadow({mode: "open"});
|
|
}
|
|
});
|
|
|
|
customElements.define("test-empty-closed", class extends HTMLElement {
|
|
constructor() {
|
|
super();
|
|
this.attachShadow({mode: "closed"});
|
|
}
|
|
});
|
|
|
|
customElements.define("test-children", class extends HTMLElement {
|
|
constructor() {
|
|
super();
|
|
this.attachShadow({mode: "open"});
|
|
this.shadowRoot.innerHTML = `
|
|
<h1>One child</h1>
|
|
<p>A second child</p>`;
|
|
}
|
|
});
|
|
|
|
customElements.define("test-named-slot", class extends HTMLElement {
|
|
constructor() {
|
|
super();
|
|
this.attachShadow({mode: "open"});
|
|
this.shadowRoot.innerHTML = `
|
|
<h1>With slot</h1>
|
|
<slot name="slot1"></slot>`;
|
|
}
|
|
});
|
|
|
|
customElements.define("test-slot", class extends HTMLElement {
|
|
constructor() {
|
|
super();
|
|
this.attachShadow({mode: "open"});
|
|
this.shadowRoot.innerHTML = `
|
|
<style>
|
|
slot::before { content: "[SLOT BEFORE]"; color: red; }
|
|
slot::after { content: "[SLOT AFTER]"; color: blue; }
|
|
</style>
|
|
<slot></slot>`;
|
|
}
|
|
});
|
|
|
|
customElements.define("test-simple-slot", class extends HTMLElement {
|
|
constructor() {
|
|
super();
|
|
this.attachShadow({ mode: "open"});
|
|
this.shadowRoot.innerHTML = "<slot></slot>";
|
|
}
|
|
});
|
|
};
|
|
</script>
|
|
<style>
|
|
#host-pseudo::before { content: "[HOST BEFORE]"; color: red; }
|
|
#host-pseudo::after { content: "[HOST AFTER]"; color: blue; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<test-empty id="empty"></test-empty>
|
|
|
|
<hr>
|
|
|
|
<test-empty id="one-child">
|
|
<h1>One child</h1>
|
|
</test-empty>
|
|
|
|
<hr>
|
|
|
|
<test-children id="shadow-children"></test-children>
|
|
|
|
<hr>
|
|
|
|
<test-named-slot id="named-slot">
|
|
<p class="slotted" slot="slot1">Slotted</p>
|
|
</test-named-slot>
|
|
|
|
<hr>
|
|
|
|
<test-slot id="slot-pseudo">
|
|
<span class="has-before">Slotted</span>
|
|
</test-slot>
|
|
|
|
<hr>
|
|
|
|
<test-empty id="host-pseudo"></test-empty>
|
|
|
|
<hr>
|
|
|
|
<test-empty id="mode-open"></test-empty>
|
|
<test-empty-closed id="mode-closed"></test-empty-closed>
|
|
|
|
<hr>
|
|
|
|
<test-simple-slot id="slot-inline-text">
|
|
Lorem ipsum
|
|
</test-simple-slot>
|
|
|
|
<hr>
|
|
<video id="video-controls" controls></video>
|
|
<video id="video-controls-with-children" controls>
|
|
<div>some content</div>
|
|
</video>
|
|
</body>
|
|
</html>
|