IFrame Seamless attribute should allow for disabling features
"Axel Dahmen" <[email protected]> Mon, 14 Apr 2014 16:38:06 +0200
| Newsgroups | gmane.comp.web.html.general |
|---|---|
| Message-ID | <[email protected]> |
Dies ist eine mehrteilige Nachricht im MIME-Format.
------=_NextPart_000_000E_01CF57FF.E99FBA70
Content-Type: text/plain;
charset="utf-8"
Content-Transfer-Encoding: quoted-printable
After reading the HTML5 specification on the seamless attribute of the =
iframe element, I believe the seamless attribute to be too narrowly =
considered.
It seems, the seamless attribute basically enables three features:
* automatic iframe height calculation
* CSS integration
* DOM integration
I see a problem in integrating the later two. So I would like to suggest =
the seamless attribute to become a comma separated list of above three =
Seamless properties to be enabled. For backward compatibility to HTML5, =
if the attribute value equals "seamless", all three properties should be =
enabled.
Here's my reason for this suggestion:
I'm using iframe elements to render micro parts of a web page, e. g. a =
data grid, without requiring much JavaScript ado. In the following I =
call these iframe micro page elements "controls".
In our web application I'm inserting arbitrary iframe controls into =
several web pages.
If the page's CSS would have influence on the iframe control's =
rendering, then it would be necessary to test each and every iframe =
control on each and every page where the iframe control could possibly =
be inserted (probably database driven), because some CSS on any =
particular page might have bad influence on the iframe control's =
content.
So I would prefer to just add an additional <link> element (the =
application's CSS) to the iframe control's HTML content and still be =
sure that there won't be any other CSS influencing the iframe control's =
HTML presentation.
Same for DOM integration: jQuery selectors may find elements not =
intended to be found if both, the page's and the iframe controls' DOM =
trees would be merged.
The current definition results in a testing hell, from my perspective.
So I suggest that any of the above three seamless features may be =
optionally applicable.
Possible seamless attribute values may be (just suggesting some names =
here):
autoheight =3D sets the iframe's height to the minimum height =
necessary to omit a scrollbar
cssinclude =3D have the page content's CSS being prepended to =
the iframe content's CSS
dominclude =3D have the iframe content's DOM integrate with the =
page content's DOM
seamless =3D "autoheight,cssinclude,dominclude"
attribute seamless =3D [ autoheight || cssinclude || dominclude ] | =
seamless
Regards,
Axel Dahmen
------=_NextPart_000_000E_01CF57FF.E99FBA70
Content-Type: text/html;
charset="utf-8"
Content-Transfer-Encoding: quoted-printable
<HTML><HEAD></HEAD>
<BODY dir=3Dltr>
<DIV dir=3Dltr>
<DIV style=3D"FONT-SIZE: 10pt; FONT-FAMILY: 'Lucida Console'; COLOR: =
#000000">
<DIV>After reading the HTML5 specification on the seamless attribute of =
the=20
iframe element, I believe the seamless attribute to be too narrowly=20
considered.</DIV>
<DIV> </DIV>
<DIV>It seems, the seamless attribute basically enables three =
features:</DIV>
<DIV> </DIV>
<DIV>* automatic iframe height calculation</DIV>
<DIV>* CSS integration</DIV>
<DIV>* DOM integration</DIV>
<DIV> </DIV>
<DIV>I see a problem in integrating the later two. So I would like to =
suggest=20
the seamless attribute to become a comma separated list of above three =
Seamless=20
properties to be enabled. For backward compatibility to HTML5, if the =
attribute=20
value equals "seamless", all three properties should be enabled.</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>Here's my reason for this suggestion:</DIV>
<DIV> </DIV>
<DIV>I'm using iframe elements to render micro parts of a web page, e. =
g. a data=20
grid, without requiring much JavaScript ado. In the following I call =
these=20
iframe micro page elements "controls".</DIV>
<DIV> </DIV>
<DIV>In our web application I'm inserting arbitrary iframe controls into =
several=20
web pages.</DIV>
<DIV> </DIV>
<DIV>If the page's CSS would have influence on the iframe control's =
rendering,=20
then it would be necessary to test each and every iframe control on each =
and=20
every page where the iframe control could possibly be inserted (probably =
database driven), because some CSS on any particular page might have bad =
influence on the iframe control's content.</DIV>
<DIV> </DIV>
<DIV>So I would prefer to just add an additional <link> element =
(the=20
application's CSS) to the iframe control's HTML content and still be =
sure that=20
there won't be any other CSS influencing the iframe control's HTML=20
presentation.</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>Same for DOM integration: jQuery selectors may find elements not =
intended=20
to be found if both, the page's and the iframe controls' DOM trees would =
be=20
merged.</DIV>
<DIV> </DIV>
<DIV>The current definition results in a testing hell, from my=20
perspective.</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV>So I suggest that any of the above three seamless features may be=20
optionally applicable.</DIV>
<DIV> </DIV>
<DIV>Possible seamless attribute values may be (just suggesting some =
names=20
here):</DIV>
<DIV> </DIV>
<DIV> autoheight =3D sets the =
iframe's=20
height to the minimum height necessary to omit a scrollbar</DIV>
<DIV> cssinclude =3D have the =
page=20
content's CSS being prepended to the iframe content's CSS</DIV>
<DIV> dominclude =3D have the =
iframe=20
content's DOM integrate with the page content's DOM</DIV>
<DIV> seamless =3D =
"autoheight,cssinclude,dominclude"</DIV>
<DIV> </DIV>
<DIV>attribute seamless =3D [ autoheight || cssinclude || dominclude ] | =
seamless</DIV>
<DIV> </DIV>
<DIV>Regards,</DIV>
<DIV>Axel Dahmen </DIV></DIV></DIV></BODY></HTML>
------=_NextPart_000_000E_01CF57FF.E99FBA70--