Clarify that declarative custom element definitions don't contain declarative shadow roots.#1101
Clarify that declarative custom element definitions don't contain declarative shadow roots.#1101justinfagnani wants to merge 1 commit intoWICG:gh-pagesfrom
Conversation
…larative shadow roots.
|
Alternatively |
|
@sashafirsov the rule could be only one |
which creates ambiguity as on implementor' side( last or first to be used?) as for web app developer. Better to avoid that. Attributes been created exactly for the case when only one key is permitted. |
|
@justinfagnani - I think this makes sense, but did you have an idea of what the behavior should be when this |
The current Declarative Custom Elements Strawman was authored before Declarative Custom Elements was specified, and the pattern of putting shadow root instance options on the
<template>element. Now that that pattern does exist, it has created something of an semantic ambiguity with the strawman syntax. (with the assumption thatshadowmodeshould be updated toshadowrootmode).In this example, is
<template shadowmode="open">intended to do?Does it:
<definition>elementIf the answer is (2), then we have the same syntax with two different behaviors: one creates a shadow root instance, one defines future shadow roots.
Since the strawman was created before DSD, it doesn't seem like this collision was intended. I think to separate DSD from declarative custom elements, even just in this strawman syntax, we should make a small edit to put the options on a new element. This has the benefit of shortening the option names by not requiring the
shadowrootprefix on every one.cc @rniwa