represents the following grouping:
PortMaster 3
3.7.1
3.7
3.5
PortMaster 2
3.7
3.5
IRX
3.7R
3.5R
Visual user agents may allow users to select from option groups through a hierarchical menu or some
other mechanism that reflects the structure of choices. 
A graphical user agent might render this as:
This image shows a SELECT element rendered as cascading menus. The top label of the menu displays
the currently selected value (PortMaster 3, 3.7.1). The user has unfurled two cascading menus, but has not
yet selected the new value (PortMaster 2, 3.7). Note that each cascading menu displays the label of an 
OPTGROUP or OPTION element. 
17.7 The TEXTAREA element
<!ELEMENT TEXTAREA - - (#PCDATA)       -- multi-line text field -->
<!ATTLIST TEXTAREA
%attrs;                              -- %coreattrs, %i18n, %events --
name        CDATA          #IMPLIED
rows        NUMBER         #REQUIRED
cols        NUMBER         #REQUIRED
disabled    (disabled)     #IMPLIED  -- unavailable in this context --
readonly    (readonly)     #IMPLIED
tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
accesskey   %Character;    #IMPLIED  -- accessibility key character --
onfocus     %Script;       #IMPLIED  -- the element got the focus --
onblur      %Script;       #IMPLIED  -- the element lost the focus --
onselect    %Script;       #IMPLIED  -- some text was selected --
onchange    %Script;       #IMPLIED  -- the element value was changed --
>
Start tag: required, End tag: required
221
17.7 The TEXTAREA element
Pdf thumbnail fix - software application project:C# PDF Thumbnail Create SDK: Draw thumbnail images for PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
www.rasteredge.com
Pdf thumbnail fix - software application project:VB.NET PDF Thumbnail Create SDK: Draw thumbnail images for PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
www.rasteredge.com
Attribute definitions 
name = cdata [p.44] [CI] [p.43] 
This attribute assigns the control name. [p.208] 
rows = number [p.44] [CN] [p.43] 
This attribute specifies the number of visible text lines. Users should be able to enter more lines than
this, so user agents should provide some means to scroll through the contents of the control when the
contents extend beyond the visible area. 
cols = number [p.44] [CN] [p.43] 
This attribute specifies the visible width in average character widths. Users should be able to enter
longer lines than this, so user agents should provide some means to scroll through the contents of the
control when the contents extend beyond the visible area. User agents may wrap visible text lines to
keep long lines visible without the need for scrolling. 
Attributes defined elsewhere 
id, class (document-wide identifiers [p.65] ) 
lang (language information [p.71] ), dir (text direction [p.73] ) 
title (element title [p.57] ) 
style (inline style information [p.174] ) 
readonly (read-only input controls [p.231] ) 
disabled (disabled input controls [p.230] ) 
tabindex (tabbing navigation [p.228] ) 
onfocus, onblur, onselect, onchange, onclick, ondblclick, onmousedown, 
onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, 
onkeyup (intrinsic events [p.240] )
The TEXTAREA element creates a multi-line text input [p.209] control. User agents should use the
contents of this element as the initial value [p.208] of the control and should render this text initially. 
This example creates a TEXTAREA control that is 20 rows by 80 columns and contains two lines of text
initially. The TEXTAREA is followed by submit and reset buttons.
<FORM action="http://somesite.com/prog/text-read" method="post">
<P>
<TEXTAREA name="thetext" rows="20" cols="80">
First line of initial text.
Second line of initial text.
</TEXTAREA>
<INPUT type="submit" value="Send"><INPUT type="reset">
</P>
</FORM>
Setting the readonly attribute allows authors to display unmodifiable text in a TEXTAREA. This differs
from using standard marked-up text in a document because the value of TEXTAREA is submitted with the
form. 
222
17.7 The TEXTAREA element
software application project:VB.NET Image: Sharpen Images with DocImage SDK for .NET
or image files, you might want to sharpen your pictures before saving them, as image sharpening can help bring out the crispness of the pic or fix an image out
www.rasteredge.com
17.8 The ISINDEX element
ISINDEX is deprecated [p.34] . This element creates a single-line text input [p.209] control. Authors
should use the INPUT element to create text input [p.209] controls. 
See the Transitional DTD [p.285] for the formal definition. 
Attribute definitions 
prompt = text [p.44] [CS] [p.43] 
Deprecated. [p.34] This attribute specifies a prompt string for the input field.
Attributes defined elsewhere
id, class (document-wide identifiers [p.65] ) 
lang (language information [p.71] ), dir (text direction [p.73] ) 
title (element title [p.57] ) 
style (inline style information [p.174] ) 
The ISINDEX element creates a single-line text input [p.209] control that allows any number of
characters. User agents may use the value of the prompt attribute as a title for the prompt.
DEPRECATED EXAMPLE:
The following ISINDEX declaration:
<ISINDEX prompt="Enter your search phrase: ">
could be rewritten with INPUT as follows: 
<FORM action="..." method="post">
<P>Enter your search phrase: <INPUT type="text"></P>
</FORM>
Semantics of 
ISINDEX.
Currently, the semantics for 
ISINDEX
are only well-defined when the base
URI for the enclosing document is an HTTP URI. In practice, the input string is restricted to Latin-1 as
there is no mechanism for the URI to specify a different character set. 
17.9 Labels
Some form controls automatically have labels associated with them (press buttons) while most do not (text
fields, checkboxes and radio buttons, and menus). 
For those controls that have implicit labels, user agents should use the value of the value attribute as the
label string. 
The LABEL element is used to specify labels for controls that do not have implicit labels, 
223
17.8 The ISINDEX element
17.9.1 The LABEL element
<!ELEMENT LABEL - - (%inline;)* -(LABEL) -- form field label text -->
<!ATTLIST LABEL
%attrs;                              -- %coreattrs, %i18n, %events --
for         IDREF          #IMPLIED  -- matches field ID value --
accesskey   %Character;    #IMPLIED  -- accessibility key character --
onfocus     %Script;       #IMPLIED  -- the element got the focus --
onblur      %Script;       #IMPLIED  -- the element lost the focus --
>
Start tag: required, End tag: required
Attribute definitions 
for = idref [p.44] [CS] [p.43] 
This attribute explicitly associates the label being defined with another control. When present, the
value of this attribute must be the same as the value of the id attribute of some other control in the
same document. When absent, the label being defined is associated with the element's contents.
Attributes defined elsewhere
id, class (document-wide identifiers [p.65] ) 
lang (language information [p.71] ), dir (text direction [p.73] ) 
title (element title [p.57] ) 
style (inline style information [p.174] ) 
accesskey (access keys [p.229] ) 
onfocus, onblur, onclick, ondblclick, onmousedown, onmouseup, onmouseover, 
onmousemove, onmouseout, onkeypress, onkeydown, onkeyup (intrinsic events [p.240] )
The LABEL element may be used to attach information to controls. Each LABEL element is associated
with exactly one form control. 
The for attribute associates a label with another control explicitly: the value of the for attribute must be
the same as the value of the id attribute of the associated control element. More than one LABEL may be
associated with the same control by creating multiple references via the for attribute. 
This example creates a table that is used to align two text input [p.209] controls and their associated
labels. Each label is associated explicitly with one text input [p.209] : 
<FORM action="..." method="post">
<TABLE>
<TR>
<TD><LABEL for="fname">First Name</LABEL>
<TD><INPUT type="text" name="firstname" id="fname">
<TR>
<TD><LABEL for="lname">Last Name</LABEL>
<TD><INPUT type="text" name="lastname" id="lname">
</TABLE>
</FORM>
224
17.9.1 The LABEL element
This example extends a previous example form to include LABEL elements.
<FORM action="http://somesite.com/prog/adduser" method="post">
<P>
<LABEL for="firstname">First name: </LABEL>
<INPUT type="text" id="firstname"><BR>
<LABEL for="lastname">Last name: </LABEL>
<INPUT type="text" id="lastname"><BR>
<LABEL for="email">email: </LABEL>
<INPUT type="text" id="email"><BR>
<INPUT type="radio" name="sex" value="Male"> Male<BR>
<INPUT type="radio" name="sex" value="Female"> Female<BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">
</P>
</FORM>
To associate a label with another control implicitly, the control element must be within the contents of the 
LABEL element. In this case, the LABEL may only contain one control element. The label itself may be
positioned before or after the associated control. 
In this example, we implicitly associate two labels with two text input [p.209] controls:
<FORM action="..." method="post">
<P>
<LABEL>
First Name
<INPUT type="text" name="firstname">
</LABEL>
<LABEL>
<INPUT type="text" name="lastname">
Last Name
</LABEL>
</P>
</FORM>
Note that this technique cannot be used when a table is being used for layout, with the label in one cell and
its associated control in another cell. 
When a LABEL element receives focus [p.227] , it passes the focus on to its associated control. See the
section below on access keys [p.229] for examples. 
Labels may be rendered by user agents in a number of ways (e.g., visually, read by speech synthesizers,
etc.) 
17.10 Adding structure to forms: the FIELDSET and LEGEND 
elements
<!--
#PCDATA is to solve the mixed content problem,
per specification only whitespace is allowed there!
-->
<!ELEMENT FIELDSET - - (#PCDATA,LEGEND,(%flow;)*) -- form control group -->
225
17.10 Adding structure to forms: the FIELDSET and LEGEND elements
<!ATTLIST FIELDSET
%attrs;                              -- %coreattrs, %i18n, %events --
>
<!ELEMENT LEGEND - - (%inline;)*       -- fieldset legend -->
<!ENTITY % LAlign "(top|bottom|left|right)">
<!ATTLIST LEGEND
%attrs;                              -- %coreattrs, %i18n, %events --
accesskey   %Character;    #IMPLIED  -- accessibility key character --
>
Start tag: required, End tag: required
LEGEND Attribute definitions
align = top|bottom|left|right [CI] [p.43] 
Deprecated. [p.34] This attribute specifies the position of the legend with respect to the fieldset.
Possible values: 
top: The legend is at the top of the fieldset. This is the default value. 
bottom: The legend is at the bottom of the fieldset. 
left: The legend is at the left side of the fieldset. 
right: The legend is at the right side of the fieldset.
Attributes defined elsewhere
id, class (document-wide identifiers [p.65] ) 
lang (language information [p.71] ), dir (text direction [p.73] ) 
title (element title [p.57] ) 
style (inline style information [p.174] ) 
accesskey (access keys [p.229] ) 
onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, 
onmouseout, onkeypress, onkeydown, onkeyup (intrinsic events [p.240] )
The FIELDSET element allows authors to group thematically related controls and labels. Grouping
controls makes it easier for users to understand their purpose while simultaneously facilitating tabbing
navigation for visual user agents and speech navigation for speech-oriented user agents. The proper use of
this element makes documents more accessible. 
The LEGEND element allows authors to assign a caption to a FIELDSET. The legend improves
accessibility when the FIELDSET is rendered non-visually. 
In this example, we create a form that one might fill out at the doctor's office. It is divided into three
sections: personal information, medical history, and current medication. Each section contains controls for
inputting the appropriate information.
<FORM action="..." method="post">
<P>
<FIELDSET>
<LEGEND>Personal Information</LEGEND>
226
17.10 Adding structure to forms: the FIELDSET and LEGEND elements
Last Name: <INPUT name="personal_lastname" type="text" tabindex="1">
First Name: <INPUT name="personal_firstname" type="text" tabindex="2">
Address: <INPUT name="personal_address" type="text" tabindex="3">
...more personal information...
</FIELDSET>
<FIELDSET>
<LEGEND>Medical History</LEGEND>
<INPUT name="history_illness" 
type="checkbox" 
value="Smallpox" tabindex="20"> Smallpox
<INPUT name="history_illness" 
type="checkbox" 
value="Mumps" tabindex="21"> Mumps
<INPUT name="history_illness" 
type="checkbox" 
value="Dizziness" tabindex="22"> Dizziness
<INPUT name="history_illness" 
type="checkbox" 
value="Sneezing" tabindex="23"> Sneezing
...more medical history...
</FIELDSET>
<FIELDSET>
<LEGEND>Current Medication</LEGEND>
Are you currently taking any medication? 
<INPUT name="medication_now" 
type="radio" 
value="Yes" tabindex="35">Yes
<INPUT name="medication_now" 
type="radio" 
value="No" tabindex="35">No
If you are currently taking medication, please indicate
it in the space below:
<TEXTAREA name="current_medication" 
rows="20" cols="50"
tabindex="40">
</TEXTAREA>
</FIELDSET>
</FORM>
Note that in this example, we might improve the visual presentation of the form by aligning elements
within each FIELDSET (with style sheets), adding color and font information (with style sheets), adding
scripting (say, to only open the "current medication" text area if the user indicates he or she is currently on
medication), etc. 
17.11 Giving focus to an element
In an HTML document, an element must receive focus from the user in order to become active and
perform its tasks. For example, users must activate a link specified by the A element in order to follow the
specified link. Similarly, users must give a TEXTAREA focus in order to enter text into it. 
227
17.11 Giving focus to an element
There are several ways to give focus to an element:
Designate the element with a pointing device. 
Navigate from one element to the next with the keyboard. The document's author may define a 
tabbing order that specifies the order in which elements will receive focus if the user navigates the
document with the keyboard (see tabbing navigation [p.228] ). Once selected, an element may be
activated by some other key sequence. 
Select an element through an access key [p.229] (sometimes called "keyboard shortcut" or "keyboard 
accelerator").
17.11.1 Tabbing navigation
Attribute definitions
tabindex = number [p.44] [CN] [p.43] 
This attribute specifies the position of the current element in the tabbing order for the current
document. This value must be a number between 0 and 32767. User agents should ignore leading 
zeros.
The tabbing order defines the order in which elements will receive focus when navigated by the user via
the keyboard. The tabbing order may include elements nested within other elements. 
Elements that may receive focus should be navigated by user agents according to the following rules:
1.  Those elements that support the tabindex attribute and assign a positive value to it are navigated
first. Navigation proceeds from the element with the lowest tabindex value to the element with the
highest value. Values need not be sequential nor must they begin with any particular value. Elements
that have identical tabindex values should be navigated in the order they appear in the character
stream. 
2.  Those elements that do not support the tabindex attribute or support it and assign it a value of "0"
are navigated next. These elements are navigated in the order they appear in the character stream. 
3.  Elements that are disabled [p.230] do not participate in the tabbing order.
The following elements support the tabindex attribute: A, AREA, BUTTON, INPUT, OBJECT, 
SELECT, and TEXTAREA. 
In this example, the tabbing order will be the BUTTON, the INPUT elements in order (note that "field1"
and the button share the same tabindex, but "field1" appears later in the character stream), and finally the
link created by the A element. 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
"http://www.w3.org/TR/REC-html40/strict.dtd">
<HTML>
<HEAD>
<TITLE>A document with FORM</TITLE>
</HEAD>
<BODY>
...some text...
<P>Go to the 
228
17.11.1 Tabbing navigation
<A tabindex="10" href="http://www.w3.org/">W3C Web site.</A>
...some more...
<BUTTON type="button" name="get-database"
tabindex="1" onclick="get-database">
Get the current database.
</BUTTON>
...some more...
<FORM action="..." method="post">
<P>
<INPUT tabindex="1" type="text" name="field1">
<INPUT tabindex="2" type="text" name="field2">
<INPUT tabindex="3" type="submit" name="submit">
</P>
</FORM>
</BODY>
</HTML>
Tabbing keys. The actual key sequence that causes tabbing navigation or element activation depends on
the configuration of the user agent (e.g., the "tab" key is used for navigation and the "enter" key is used to
activate a selected element). 
User agents may also define key sequences to navigate the tabbing order in reverse. When the end (or
beginning) of the tabbing order is reached, user agents may circle back to the beginning (or end). 
17.11.2 Access keys
Attribute definitions
accesskey = character [p.47] [CN] [p.43] 
This attribute assigns an access key to an element. An access key is a single character from the
document character set.Note. Authors should consider the input method of the expected reader when
specifying an accesskey.
Pressing an access key assigned to an element gives focus to the element. The action that occurs when an
element receives focus depends on the element. For example, when a user activates a link defined by the A
element, the user agent generally follows the link. When a user activates a radio button, the user agent
changes the value of the radio button. When the user activates a text field, it allows input, etc. 
The following elements support the accesskey attribute: A, AREA, BUTTON, INPUT, LABEL, and 
LEGEND, and TEXTAREA. 
This example assigns the access key "U" to a label associated with an INPUT control. Typing the access
key gives focus to the label which in turn gives it to the associated control. The user may then enter text
into the INPUT area.
229
17.11.2 Access keys
<FORM action="..." method="post">
<P>
<LABEL for="fuser" accesskey="U">
User Name
</LABEL>
<INPUT type="text" name="user" id="fuser">
</P>
</FORM>
In this example, we assign an access key to a link defined by the A element. Typing this access key takes
the user to another document, in this case, a table of contents.
<P><A accesskey="C" 
rel="contents"
href="http://someplace.com/specification/contents.html">
Table of Contents</A>
The invocation of access keys depends on the underlying system. For instance, on machines running MS
Windows, one generally has to press the "alt" key in addition to the access key. On Apple systems, one
generally has to press the "cmd" key in addition to the access key. 
The rendering of access keys depends on the user agent. We recommend that authors include the access
key in label text or wherever the access key is to apply. User agents should render the value of an access
key in such a way as to emphasize its role and to distinguish it from other characters (e.g., by underlining
it). 
17.12 Disabled and read-only controls
In contexts where user input is either undesirable or irrelevant, it is important to be able to disable a
control or render it read-only. For example, one may want to disable a form's submit button until the user
has entered some required data. Similarly, an author may want to include a piece of read-only text that
must be submitted as a value along with the form. The following sections describe disabled and read-only
controls. 
17.12.1 Disabled controls
Attribute definitions
disabled [CI] [p.43] 
When set for a form control, this boolean attribute disables the control for user input.
When set, the disabled attribute has the following effects on an element:
Disabled controls do not receive focus [p.227] . 
Disabled controls are skipped in tabbing navigation [p.228] . 
Disabled controls cannot be successful [p.232] .
230
17.12 Disabled and read-only controls
Documents you may be interested
Documents you may be interested