Cursors.......New Proposals

Hi all,

I wish to take this opportunity to propose that the CSS Working Group 
consider allowing authors to specify the color of cursors as well as 
altering the mechanism currently used for describing such cursors. In 
addition, I would also like to suggest a possible enhancement by 
adopting the concept of coordinates currently associated with 
absolute positioning to render cursors as described by authors, 
within any area of the viewport.

1. NEW PROPERTY DESCRIBING COLOR OF CURSORS
-------------------------------------------

A new property called cursor-color should be adopted to allow authors 
to specify various colors through existing color names or hex 
numbers. This issue has not yet been addressed in any of the 
previous CSS specifications to date, but would clearly extend the 
capability of the author to control the presentational outlay of the 
document.

2. ALTERING CURSOR PROPERTY
---------------------------

The current syntax for specifying a cursor is restricted to the use 
of a property solely called "cursor". For example:

P {cursor: text}
SPAN {cursor: help}

The use of the ***general*** name "cursor" to describe the physical 
shape rendered on the viewport inhibits extensibility and is clearly 
unsuitable if the ability to describe the behavior of cursors in 
stylesheets is to be augmented.

As well, this method of describing cursors cannot be used in 
conjunction with the shorthand method available with other 
properties, ex. borders.

P { border: solid red } // taken from 8.5.4 of CSS 2 spec

Thus I propsoe that the current "cursor" property be renamed "cursor-
icon":

P { cursor-icon: text }

Authors can then specify any future properties of cursors in 
shorthand 

ex. { cursor: #FCFDC4 crosshair }

3. "POSITIONING" CURSORS
------------------------

Currently, cursor presentation can only be rendered through an 
element (such as TABLE). There is no mechanism for describing which 
icon/cursor should be displayed on particular areas of the page which 
cannot be described through the HTML coding.

In addition to the advantages offered through absolute positioning, 
for example a document in which an image acts as the background. The 
image consists of a thick 1 inch yellow line running down the left 
hand side of the page with white space consisting of the rest. 
Different cursors could act for different areas of the "image"

Real example: CNET's Download Centre at http://www.download.com 
(though it has two thick lines)

I would like to suggest the following properties be added:

cursor-area-top
cursor-area-left
cursor-area-height
cursor-area-width

When used in conjunction with the various units currently allowed 
within the specification, authors can then define explicitly the 
areas of a page to display the requested cursor.

A simple example would be:

BODY { cursor-area-top: 5px;
       cursor-area-left: 10px;
       cursor-area-height: 2cm;
       cursor-area-width: 4cm;
     }

4. DISCUSSION
-------------

There are several remaining issues which need to be dealt with:

a) How would one describe the color of a predefined cursor in the 
following example from 18.1 in which a mechanism for using a primary 
cursor is already defined?

P { cursor: url("mything.cur"), url("second.csr"), text; }

b) Predefined cursor files may consist of various colors. Should the 
stylesheet have the authority to overide the existing color scheme?

This is certainly up for discussion and I would welcome any responses 
from the list.

Take care all,
--Albert Lui.

Received on Monday, 4 January 1999 23:27:04 UTC