On Mon, Jun 15, 2009 at 4:26 PM, Thomas Powell<tpow...@gmail.com> wrote:
> Proposing <nostyle> in the spirit of <noscript>
>
> Examples
> --------
> 1) Head Usage
> <nostyle>
>  <meta http-equiv="Refresh" content="0;url=/errors/stylerequired.html">
> </nostyle>
>
> 2) Body Usage
> <nostyle>
>  <h2>Warning: Styles required for correct rendering</h2>
> </nostyle>

The reason that <noscript> worked is because (IIRC) it was introduced
at the same time as <script>.  All browsers that supported <script>
also supported <noscript>.  <nostyle> would cause all legacy user
agents to render the content even if they supported styles just fine.

> And yes while that is true and for many situations will work fine, there are
> other cases you won't and you can get a sloppy or even bad results because
> of rendering engine paths.  For example, because style is not applied until
> later you have an issue here
>
>  <h2 class="nostyle"><img src="error.gif">Warning: Styles required for
> correct rendering</h2>
>
> The network request happens regardless of situation no assuming images on.

That doesn't seem like a very serious issue.  Just don't use images if
you care that much.  A large percentage of non-CSS browsers are
probably text-based anyway.

> For example, using the content property can be somewhat troubling if
> style is removed.  For example, consider what happens if you are putting in
> field required indicators
> input[type=text].required:before {content: " (*) "}

This should just use HTML5's required attribute instead of a class:

http://dev.w3.org/html5/spec/Overview.html#the-required-attribute

Conformant browsers should make it clear to the user that the field is
required even if styles are disabled.

> or for offsite links
> a[href^="http://"]:after {content:' ( Offsite Link )';}

This is non-essential info, and every browser I've heard of exposes it
anyway (e.g., by hovering over the link and looking in the lower
left).

> or any other dynamic insert this way.

Do you have any other examples where this is a significant issue?
Those two don't seem like a big deal to me, honestly, even if it were
logistically possible to get <nostyle> supported widely enough to be
useful.

If CSS is necessary for a site to operate, it's probably being
misused.  If an author is misusing CSS this badly, it's not clear to
me why they could be expected to reliably use <nostyle>.  The contents
of <nostyle> also don't make a difference to almost anyone, so authors
who use it won't really understand the purpose it serves and it will
probably be misused more often than used.

Reply via email to