- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Sun, 16 Oct 2005 11:56:10 -0700
- To: <www-style@w3.org>
I am trying to build a system of input widgets for HTML based solely
on DOM/CSS primitives in HTMLayout engine.
For rendering OS native shapes for inputs I am using special
URL schema - url(theme:button-normal), for example <INPUT type="button">
looks like:
/* text button */
input[type="button"], button
{
padding:0.5em 1em;
display:inline-block;
white-space: nowrap;
behavior:input-button;
background-repeat:stretch;
background-image:url(theme:button-normal);
}
input[type="button"]:hover, button:hover
{
background-image:url(theme:button-hover);
}
input[type="button"]:hover:active, button:hover:active
{
background-image:url(theme:button-pressed);
}
input[type="button"]:disabled, button:disabled
{
background-image:url(theme:button-disabled);
}
Here is <select> in various incarnations:
http://www.terrainformatica.com/htmlayout/images/selects2.jpg
So far so good but the only one question remains:
==> How to define in CSS OS specific metrics?
For example I need to define somehow width of "dropdown button"
in inline dropdown <select>.
Now I am using special function metrics
select[type="select-dropdown"] > button
{
width:metrics( width, theme:combobox-button);
height: 100%;
}
More generic question:
==> do we need in CSS os-specific metrics or/and shapes at all?
Speaking about styling input elements - answer is definitely yes. Active
form elements
need to meet user's expectations in most cases.
Andrew Fedoniouk.
http://terrainformatica.com
Received on Sunday, 16 October 2005 18:56:31 UTC