The ILAYER element (also known as an 'inflow' or 'in-line' layer) was
created by Netscape and allows an author to define precisely positioned
2-dimensional layout consisting of overlapping layers of transparent
or solid content on a web page. All the content between the opening
and closing ILAYER tags can be treated as a single item of content
that can be moved and altered in various ways. ILAYER elements that do
not specify positioning will appear within the flow of a document (like
an image.) If positioning values ARE used on this type of
layer, the positioning coordinates are relative to where the layer would
ordinarily occur in the document flow. The other tag-based method of
defining a layer is through the use of the 'out-of-flow' or 'positioned'
LAYER element.
Layers can have a stacking order that allows a virtual third
z-dimension to be defined. Using this, layers can appear on top of
other layers. Layers can also be transparent or solid; if
transparent, the content of underlying layers shows through it.
As if that wasn't enough, background colors or tiled images can also be
specified for a layer (setting these attributes for a layer will
negate its transparency property and layers below it will be obscured.)
Description:
This attribute specifies the name of the layer that will occur directly
above the current layer in the layer stacking order (z-order.) It
overrides the default behavior of placing new layers on top of all
existing layers. Only one of the Z-INDEX, ABOVE, or BELOW attributes
can be used for a given layer. References to layers not yet defined
result in default layer creation behavior - i.e. the new layer will
be placed on top of all existing layers.
Values: An existing valid alphanumeric
layer NAME value.
Background
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This specifies a background image to be tiled on a layer. Default
behavior for a layer is to be transparent.
Values: An absolute or relative URL.
Below
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This attribute specifies the name of the layer that will occur directly
below the current layer in the layer stacking order (z-order.) It
overrides the default behavior of placing new layers on top of all
existing layers. Only one of the Z-INDEX, ABOVE, or BELOW attributes
can be used for a given layer. References to layers not yet defined
result in default layer creation behavior - i.e. the new layer will
be placed on top of all existing layers.
Values: An existing valid alphanumeric
layer NAME value.
Bgcolor
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This specifies the background color of the layer. Default behavior
for a layer is to be transparent.
Description:
This parameter specifies the clipping rectangle (viewable area) of
the layer, which can be less than the width and height of the content
of the layer. If the CLIP attribute is omitted, the clipping rectangle
of a layer is the same size as the HTML content of the layer. A layer
will expand to contain all of its content by default.
Values:
A comma separated list of integer values representing the absolute pixel
coordinates of the rectangle. Origin values are at the top, left corner
and grow as one moves down or to the right. Format 1:CLIP="left,top,right,bottom" Format 2:CLIP="right,bottom" ['left' and
'top' values default to zero.]
Height
2 | 3
| 3.2 | 4
| IE | M
| N4B3 | O
Required? No
Description:
This parameters specifies the height of the layer's content and
serves as a reference dimension for child layers.
Values: Positive integers representing
a pixel width or a percentage relative to the containing layer/window.
Left
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This specifies the coordinate position of the left side boundary
position of the current layer in relation to a parent layer if present.
if no parent layer exists, the value is relative to the main document window.
Values:
Integer values specifying screen position or an HTML scripting
expression to position one layer relative to another.
Name
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This attribute specifies the name of the layer in order to
identify or reference it from other layers or scripting languages.
Layers are unnamed by default.
Values:
An alphanumeric string. Must begin with an alphabetic character.
PageX
2 | 3
| 3.2 | 4
| IE | M
| N4B3 | O
Required? No
Description:
This specifies the absolute horizontal (X) coordinate position of the left
boundary position of the current layer in relation to the document window
(this differs slightly in definition from the LEFT attribute.)
Values:
Integer values specifying screen position or an HTML scripting expression.
PageY
2 | 3
| 3.2 | 4
| IE | M
| N4B3 | O
Required? No
Description:
This specifies the absolute vertical (Y) coordinate position of the top
boundary position of the current layer in relation to the document window
(this differs slightly in definition from the TOP attribute.)
Values:
Integer values specifying screen position or an HTML scripting expression.
Src
2 | 3
| 3.2 | 4
| IE | M
| N4B3 | O
Required? No
Description:
This attribute specifies the URL of an HTML 'sub-document' to be inserted
in to the layer. The effect is similar to the IFRAME
element implemented by Internet Explorer.
Values:
Either an absolute or relative URL.
Top
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This specifies the coordinate position of the top boundary
position of the current layer in relation to a parent layer if present.
if no parent layer exists, the value is relative to the main document window.
Values:
Integer values specifying screen position or an HTML scripting
expression to position one layer relative to another.
Visibility
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This attribute specifies whether the layer is visible or not. A layer
will have the same visibility as its parent layer by default. Even if
the visibility of a layer is set to SHOW, a layer can only be seen if
there are no other visible, solid layers stacked on top of it. For top
level layers that are not nested inside other layers, a value of
INHERIT has the same effect as SHOW since the body document is always
visible.
Values: show
[Shows the layer] hide
[Hides the layer] inherit
[The layer will have the same visibility as its parent layer]
Width
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This parameters specifies the width of the layer's content. Specifically,
it controls the right margin of the layer for wrapping purposes.
Some elements may not be 'wrappable' (like images) and extend beyond
the width specified. Layer contents wrap at the right boundary of the
enclosing block by default.
Values: Positive integers representing
a pixel width.
Z-index
2 | 3
| 3.2 | 4
| IE | M
| N4B2 | O
Required? No
Description:
This attribute allows a layer's stacking order (z-order) to be
specified in terms of an integer. Layers with higher numbered Z-INDEX
values are stacked above those with lower ones. Positive Z-INDEX
values cause the layer to be stacked above its parent while negative
values will cause the layer to be stacked below its parent. This
attribute overrides the default behavior of placing new layers on top
of all existing layers. Only one of the Z-INDEX, ABOVE, or BELOW attributes
can be used for any given layer.
DTD Note: ILAYER is a nestable
in-line element, much like the SPAN element. I am treating the behavior
as similar to SPAN. This is a questionable decision, but until I experiment
with this element or some official behavioral interaction documentation
appears this should be a sufficient model.
DTD Note: Since the DTD behavior is
tenuous at best, I have held off including the element in the Physical
Formatting element grouping. Consider the %Physical Formatting% group
to contain the ILAYER element if a full behavioral model is desired.
Note: It appears that content pointed to by the SRC
attribute should be a complete HTML document.
Only Netscape currently supports this element and it is very likely
to be the only browser to ever do so. Its use is not recommended. The
same capabilities are available with wider browser support via the
Style Sheet Positioning properties.
Browser Peculiarities
There is some odd behavior with forms and the LAYER/ILAYER elements.
If a LAYER/ILAYER element is nested inside a FORM element,
and any widgets for the form (buttons, text fields, etc) are contained
within the layer, they will not appear/be rendered. If a widget/field is
to show up, the containing FORM element must lie within the
same LAYER/ILAYER element as its widgets/fields.