W3C home > Mailing lists > Public > public-webapps@w3.org > January to March 2015

Re: Minimum viable custom elements

From: Ryosuke Niwa <rniwa@apple.com>
Date: Wed, 04 Feb 2015 11:08:29 -0800
Cc: Brian Kardell <bkardell@gmail.com>, Chris Bateman <chrisb808@gmail.com>, Anne van Kesteren <annevk@annevk.nl>, Steve Faulkner <faulkner.steve@gmail.com>, WebApps WG <public-webapps@w3.org>
Message-id: <B523267B-CF28-4562-B7ED-D46278FFAB35@apple.com>
To: Alice Boxhall <aboxhall@google.com>

> On Feb 4, 2015, at 10:54 AM, Alice Boxhall <aboxhall@google.com> wrote:
> 
> On Wed, Feb 4, 2015 at 10:36 AM, Ryosuke Niwa <rniwa@apple.com <mailto:rniwa@apple.com>> wrote:
> 
>> On Feb 4, 2015, at 10:12 AM, Brian Kardell <bkardell@gmail.com <mailto:bkardell@gmail.com>> wrote:
>> 
>> On Wed, Feb 4, 2015 at 12:41 PM, Chris Bateman <chrisb808@gmail.com <mailto:chrisb808@gmail.com>> wrote:
>> Yeah, I had noted in that post that wrapping a native element with a custom element was an option - only drawback is that the markup isn't as terse (which is generally advertised as one of the selling points of Custom Elements). But that doesn't seem like a deal breaker to me, if subclassing needs to be postponed.
>> 
>> Chris
>> 
>>  
>> As I pointed out ealier:
>>  
>> <input is="x-foo">
>> 
>> <x-foo><input></x-foo>
>> 
>> seems like barely a ternseness savings worth discussing.
> 
> Indeed.  Also, authors are used to the idea of including a fallback content inside an element after canvas and object elements and this fits well with their mental model.
> 
> I'm just trying to get my head around this pattern. In this example, does the web page author or the custom element developer embed the input? And who is responsible for syncing the relevant attributes across? In reality, isn't this going to look more like
> 
> <x-checkbox checked="true">
>     <input type="checkbox" checked="true">
> </x-checkbox>
> 
> or as a slightly contrived example,
> 
> <x-slider min="-100" max="100" value="0" step="5">
>     <input type="range" min="-100" max="100" value="0" step="5">
> </x-slider>
> 
> Or does the custom element get its state from the embedded element?


I'd imagine that the better approach is for the custom element to pull values out of the fallback element so:

<x-checkbox><input type="checkbox" checked="true"></x-checkbox>
<x-slider><input type="range" min="-100" max="100" value="0" step="5"></x-slider>

This is similar to how "picture" element sometimes uses the attribute values of the containing "img" element to choose the right image to show.

- R. Niwa
Received on Wednesday, 4 February 2015 19:09:00 UTC

This archive was generated by hypermail 2.3.1 : Friday, 27 October 2017 07:27:25 UTC