A Propusal for A New Pseudo Element Called :icon

Take a look to this HTML5 code as shown here:

<menu type="toolbar">
	<command type="radio" radiogroup="alignment" checked="checked"
		label="Left" icon="icons/alL.png" onclick="setAlign('left')">
	<command type="radio" radiogroup="alignment"
		label="Center" icon="icons/alC.png" onclick="setAlign('center')">
	<command type="radio" radiogroup="alignment"
		label="Right" icon="icons/alR.png" onclick="setAlign('right')">
<hr>
	<command type="command" disabled label="Publish" icon="icons/pub.png" onclick="publish()">
</menu>

The question is: Isn’t icon="" attribute here a presentation attribute?
You might say yes, and it should be set using CSS like this:

command.align-right{icon: '....'}

However, this presentation attribute in turn needs presentation attributes! (position, padding…).

So, we need something in between: A Pseudo Element.
A Pseudo Element is simply an attribute has attributes.

<command class="page-about"...></command>
<command class="domain-settings"...></command>

.page-about:icon {
	content: char(ℹ);
	font: 10pt RichStyle;
	icon-position: top;
}

.domain-settings:icon {
	content: char(⚙);
	font: 10pt RichStyle;
	icon-position: top;
}

Thus, icon="" as an HTML attribute for <command> should be deprecated.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Before you comment here, note that this forum is moderated and your IP address is sent to Akismet, the plugin we use to mitigate spam comments.