Re: [w3c/webcomponents] Is or how can Shadow DOM be 'SEO friendly'? (#500)

Components are most effectivelt designed for functionality, layout, and design. If you have header, footer, site-map, and other content that should be able to crawl, It should be directly in the markup from the landing where it should be crawled. The content really only needs to be flattened for what is needed to complete initial paint and display of information for the first visit. Landing points can also be flattened for user-agents such as the google search bot or any other agent you wish to deliver content. This means of you are using "fragments" (full chunks of html and content) you should flatten that portion, and retain any base component and behaviors you are using. The browser will process and render your custom-elements before they are defined in the browser. Write clean custom-elements, and use prerendering techniques. Dont nest data, if you do nest data, such as within an app shell <my-app> </my-app> then flatten the app shell. You do not need declarative shadow dom when flattening the <app-shell>  The browser should detect this is a custom component, and will work through the life cycle of enhancing that custom-element once it is defined. I believe it should display even if no javascript has been loaded, and I believe an undefined custom-element is treated like a <span> element in browser. 

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/webcomponents/issues/500#issuecomment-520587656

Received on Monday, 12 August 2019 20:44:32 UTC