Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 01:07 31.07.25 
Клубове/ Контакти / Любов Пълен преглед*
Информация за клуба
Тема let's talk about FEN baby [re: ani]
Авторabsurd (Нерегистриран) 
Публикувано04.02.01 13:14  








Network Working Group D. Raggett
Request for Comments: 1942 W3C
Category: Experimental May 1996


HTML Tables

Status of this Memo

This memo defines an Experimental Protocol for the Internet
community. This memo does not specify an Internet standard of any
kind. Discussion and suggestions for improvement are requested.
Distribution of this memo is unlimited.

Abstract

The HyperText Markup Language (HTML) is a simple markup language used
to create hypertext documents that are portable from one platform to
another. HTML documents are SGML documents with generic semantics
that are appropriate for representing information from a wide range
of applications. This specification extends HTML to support a wide
variety of tables. The model is designed to work well with associated
style sheets, but does not require them. It also supports rendering
to braille, or speech, and exchange of tabular data with databases
and spreadsheets. The HTML table model embodies certain aspects of
the CALS table model, e.g. the ability to group table rows into
thead, tbody and tfoot sections, plus the ability to specify cell
alignment compactly for sets of cells according to the context.

Table of Contents

Recent Changes ................................................. 1
Brief Introduction ............................................. 2
Design Rationale ............................................... 5
Walkthrough of the Table DTD ................................... 8
Recommended Layout Algorithms ................................. 23
HTML Table DTD ................................................ 26
References .................................................... 29
Security Considerations ....................................... 30
Author's Address .............................................. 30

Recent Changes

This specification extends HTML to support tables. The table model
has grown out of early work on HTML+ and the initial draft of HTML3.
The earlier model has been been extended in response to requests from
information providers for improved control over the presentation of
tabular information:



Raggett Experimental [Page 1]

RFC 1942 HTML Tables May 1996


* alignment on designated characters such as "." and ":"
e.g. aligning a column of numbers on the decimal point

* more flexibility in specifying table frames and rules

* incremental display for large tables as data is received

* the ability to support scrollable tables with fixed headers plus
better support for breaking tables across pages for printing

* optional column based defaults for alignment properties

In addition, a major goal has been to provide backwards compatibility
with the widely deployed Netscape implementation of tables. A
subsidiary goal has been to simplify importing tables conforming to
the SGML CALS model. The latest draft makes the ALIGN attribute
compatible with the latest Netscape and Microsoft browsers. Some
clarifications have been made to the role of the DIR attribute and
recommended behaviour when absolute and relative column widths are
mixed.

A new element COLGROUP has been introduced to allow sets of columns
be grouped with different width and alignment properties specified by
one or more COL elements. The semantics of COLGROUP have been
clarified over previous drafts, and RULES=BASIC replaced by
RULES=GROUPS.

The FRAME and RULES attributes have been modified to avoid SGML name
clashes with each other, and to avoid clashes with the ALIGN and
VALIGN attributes. These changes were additionally motivated by the
desire to avoid future problems if this specification is extended to
allow FRAME and RULES attributes with other table elements.

A Brief Introduction to HTML Tables

Tables start with an optional caption followed by one or more rows.
Each row is formed by one or more cells, which are differentiated
into header and data cells. Cells can be merged across rows and
columns, and include attributes assisting rendering to speech and
braille, or for exporting table data into databases. The model
provides limited support for control over appearence, for example
horizontal and vertical alignment of cell contents, border styles and
cell margins. You can further affect this by grouping rows and
columns together. Tables can contain a wide range of content, such as
headers, lists, paragraphs, forms, figures, preformatted text and
even nested tables.





Raggett Experimental [Page 2]

RFC 1942 HTML Tables May 1996


Example

<TABLE BORDER>
<CAPTION>A test table with merged cells</CAPTION>
<TR><TH ROWSPAN=2><TH COLSPAN=2>Average
<TH ROWSPAN=2>other<BR>category<TH>Misc
<TR><TH>height<TH>weight
<TR><TH ALIGN=LEFT>males<TD>1.9<TD>0.003
<TR><TH ALIGN=LEFT ROWSPAN=2>females<TD>1.7<TD>0.002
</TABLE>

On a dumb terminal, this would be rendered something like:

A test table with merged cells
/--------------------------------------------------\
| | Average | other | Misc |
| |-------------------| category |--------|
| | height | weight | | |
|-----------------------------------------|--------|
| males | 1.9 | 0.003 | | |
|-----------------------------------------|--------|
| females | 1.7 | 0.002 | | |
\--------------------------------------------------/




























Raggett Experimental [Page 3]

RFC 1942 HTML Tables May 1996


Next, a richer example with grouped rows and columns (adapted from
"Developing International Software" by Nadine Kano). First here is
what the table looks like on paper:

CODE-PAGE SUPPORT IN MICROSOFT WINDOWS
========================================================================
Code-Page| Name |ACP OEMCP| Windows Windows Windows
ID | | | NT 3.1 NT 3.51 95
------------------------------------------------------------------------
1200 |Unicode (BMP of ISO 10646) | | X X *
1250 |Windows 3.1 East. Europe | X | X X X
1251 |Windows 3.1 Cyrillic | X | X X X
1252 |Windows 3.1 US (ANSI) | X | X X X
1253 |Windows 3.1 Greek | X | X X X
1254 |Windows 3.1 Turkish | X | X X X
1255 |Hebrew | X | X
1256 |Arabic | X | X
1257 |Baltic | X | X
1361 |Korean (Johab) | X | ** X
------------------------------------------------------------------------
437 |MS-DOS United States | X | X X X
708 |Arabic (ASMO 708) | X | X
709 |Arabic (ASMO 449+, BCON V4)| X | X
710 |Arabic (Transparent Arabic)| X | X
720 |Arabic (Transparent ASMO) | X | X
========================================================================

The markup for this uses COLGROUP elements to group columns and to
set default column alignment. TBODY elements are used to group rows.
The FRAME and RULES attributes are used to select which borders to
render.

<table border=2 frame=hsides rules=groups>
<caption>CODE-PAGE SUPPORT IN MICROSOFT WINDOWS</caption>
<colgroup align=center>
<colgroup align=left>
<colgroup align=center span=2>
<colgroup align=center span=3>
<thead valign=top>
<tr>
<th>Code-Page
ID
<th>Name
<th>ACP
<th>OEMCP
<th>Windows
NT 3.1
<th>Windows
NT 3.51
<th>Windows
95
<tbody>



Raggett Experimental [Page 4]

RFC 1942 HTML Tables May 1996


<tr><td>1200<td>Unicode (BMP of ISO 10646)<td><td><td>X<td>X<TD>*
<tr><td>1250<td>Windows 3.1 Eastern European<td>X<td><td>X<td>X<TD>X
<tr><td>1251<td>Windows 3.1 Cyrillic<td>X<td><td>X<td>X<TD>X
<tr><td>1252<td>Windows 3.1 US (ANSI)<td>X<td><td>X<td>X<TD>X
<tr><td>1253<td>Windows 3.1 Greek<td>X<td><td>X<td>X<TD>X
<tr><td>1254<td>Windows 3.1 Turkish<td>X<td><td>X<td>X<TD>X
<tr><td>1255<td>Hebrew<td>X<td><td><td><td>X
<tr><td>1256<td>Arabic<td>X<td><td><td><td>X
<tr><td>1257<td>Baltic<td>X<td><td><td><td>X
<tr><td>1361<td>Korean (Johab)<td>X<td><td><td>**<td>X
<tbody>
<tr><td>437<td>MS-DOS United States<td><td>X<td>X<td>X<TD>X
<tr><td>708<td>Arabic (ASMO 708)<td><td>X<td><td><td>X
<tr><td>709<td>Arabic (ASMO 449+, BCON V4)<td><td>X<td><td><td>X
<tr><td>710<td>Arabic (Transparent Arabic)<td><td>X<td><td><td>X
<tr><td>720<td>Arabic (Transparent ASMO)<td><td>X<td><td><td>X
</table>

Design Rationale

The HTML table model has evolved from studies of existing SGML tables
models, the treatment of tables in common word processing packages,
and looking at a wide range of tabular layout in magazines, books and
other paper-based documents. The model was chosen to allow simple
tables to be expressed simply with extra complexity only when needed.
This makes it practical to create the markup for HTML tables with
everyday text editors and reduces the learning curve for getting
started. This feature has been very important to the success of HTML
to date.

Increasingly people are using filters from other document formats or
direct wysiwyg editors for HTML. It is important that the HTML table
model fits well with these routes for authoring HTML. This affects
how the representation handles cells which span multiple rows or
columns, and how alignment and other presentation properties are
associated with groups of cells.

A major consideration for the HTML table model is that the fonts and
window sizes etc. in use with browsers are not under the author's
control. This makes it risky to rely on column widths specified in
terms of absolute units such as picas or pixels. Instead, tables can
be dynamically sized to match the current window size and fonts.
Authors can provide guidance as to the relative widths of columns,
but user agents should to ensure that columns are wide enough to
render the width of the largest single element of the cell's content.
If the author's specification must be overridden, it is preferred
that the relative widths of individual columns are not changed
drastically.



Raggett Experimental [Page 5]

RFC 1942 HTML Tables May 1996


For large tables or slow network connections, it is desirable to be
able to start displaying the table before all of the data has been
received. The default window width for most user agents shows about
80 characters, and the graphics for many HTML pages are designed with
these defaults in mind. Authors can provide a hint to user agents to
activate incremental display of table contents. This feature requires
the author to specify the number of columns, and includes provision
for control of table width and the widths of different columns in
relative or absolute terms.

For incremental display, the browser needs the number of columns and
their widths. The default width of the table is the current window
size (width="100%"). This can be altered by including a WIDTH
attribute in the TABLE start tag. By default all columns have the
same width, but you can specify column widths with one or more COL
elements before the table data starts.

The remaining issue is the number of columns. Some people have
suggested waiting until the first row of the table has been received,
but this could take a long time if the cells have a lot of content.
On the whole it makes more sense, when incremental display is
desired, to get authors to explicitly specify the number of columns
in the TABLE start tag.

Authors still need a way of informing the browser whether to use
incremental display or to automatically size the table to match the
cell contents. For the two pass auto sizing mode, the number of
columns is determined by the first pass, while for the incremental
mode, the number of columns needs to be stated up front. So it seems
to that COLS=_nn_ would be better for this purpose than a LAYOUT
attribute such as LAYOUT=FIXED or LAYOUT=AUTO.

It is generally held useful to consider documents from two
perspectives: Structural idioms such as headers, paragraphs, lists,
tables, and figures; and rendering idioms such as margins, leading,
font names and sizes. The wisdom of past experience encourages us to
separate the structural information in documents from rendering
information. Mixing them together ends up causing increased cost of
ownership for maintaining documents, and reduced portability between
applications and media.

For tables, the alignment of text within table cells, and the borders
between cells are, from the purist's point of view, rendering
information. In practice, though, it is useful to group these with
the structural information, as these features are highly portable
from one application to the next. The HTML table model leaves most
rendering information to associated style sheets. The model is
designed to take advantage of such style sheets but not to require



Raggett Experimental [Page 6]

RFC 1942 HTML Tables May 1996


them.

This specification provides a superset of the simpler model presented
in earlier work on HTML+. Tables are considered as being formed from
an optional caption together with a sequence of rows, which in turn
consist of a sequence of table cells. The model further
differentiates header and data cells, and allows cells to span
multiple rows and columns.

Following the CALS table model, this specification allows table rows
to be grouped into head and body and foot sections. This simplifies
the representation of rendering information and can be used to repeat
table head and foot rows when breaking tables across page boundaries,
or to provide fixed headers above a scrollable body panel. In the
markup, the foot section is placed before the body sections. This is
an optimization shared with CALS for dealing with very long tables.
It allows the foot to be rendered without having to wait for the
entire table to be processed.

For the visually impaired, HTML offers the hope of setting to rights
the damage caused by the adoption of windows based graphical user
interfaces. The HTML table model includes attributes for labeling
each cell, to support high quality text to speech conversion. The
same attributes can also be used to support automated import and
export of table data to databases or spreadsheets.

Current desktop publishing packages provide very rich control over
the rendering of tables, and it would be impractical to reproduce
this in HTML, without making HTML into a bulky rich text format like
RTF or MIF. This specification does, however, offer authors the
ability to choose from a set of commonly used classes of border
styles. The FRAME attribute controls the appearence of the border
frame around the table while the RULES attribute determines the
choice of rulings within the table.

During the development of this specification, a number of avenues
were investigated for specifying the ruling patterns for tables. One
issue concerns the kinds of statements that can be made. Including
support for edge subtraction as well as edge addition leads to
relatively complex algorithms. For instance work on allowing the full
set of table elements to include the FRAME and RULES attributes led
to an algorithm involving some 24 steps to determine whether a
particular edge of a cell should be ruled or not. Even this
additional complexity doesn't provide enough rendering control to
meet the full range of needs for tables. The current specification
deliberately sticks to a simple intuitive model, sufficient for most
purposes. Further experimental work is needed before a more complex
approach is standardized.



Raggett Experimental [Page 7]

RFC 1942 HTML Tables May 1996


A walk through the table DTD

The table document type definition provides the formal definition of
the allowed syntax for html tables. The following is an annotated
listing of the DTD. The complete listing appears at the end of this
document.

Note that the TABLE element is a block-like element rather a
character-level element. As such it is a peer of other HTML block-
like elements such as paragraphs, lists and headers.

Common Attributes

The following attributes occur in several of the elements and are
defined here for brevity. In general, all attribute names and values
in this specification are case insensitive, except where noted
otherwise. The ID, CLASS and attributes are required for use with
style sheets, while LANG and DIR are needed for internationalization.

<!ENTITY % attrs
"id ID #IMPLIED -- element identifier --
class NAMES #IMPLIED -- for subclassing elements --
lang NAME #IMPLIED -- as per RFC 1766 --
dir (ltr|rtl) #IMPLIED -- I18N text direction --">

ID
Used to define a document-wide identifier. This can be used for
naming positions within documents as the destination of a
hypertext link. It may also be used by style sheets for
rendering an element in a unique style. An ID attribute value is
an SGML NAME token. NAME tokens are formed by an initial letter
followed by letters, digits, "-" and "." characters. The letters
are restricted to A-Z and a-z.

CLASS
A space separated list of SGML NAME tokens. CLASS names specify
that the element belongs to the corresponding named classes. It
allows authors to distinguish different roles played by the same
tag. The classes may be used by style sheets to provide
different renderings as appropriate to these roles.

LANG
A LANG attribute identifies the natural language used by the
content of the associated element.The syntax and registry of
language values are defined by RFC 1766. In summary the language
is given as a primary tag followed by zero or more subtags,
separated by "-". White space is not allowed and all tags are
case insensitive. The name space of tags is administered by



Raggett Experimental [Page 8]

RFC 1942 HTML Tables May 1996


IANA. The two letter primary tag is an ISO 639 language
abbreviation, while the initial subtag is a two letter ISO 3166
country code. Example values for LANG include:

en, en-US, en-uk, i-cherokee, x-pig-latin.

DIR
Human writing systems are grouped into scripts, which determine
amongst other things, the direction the characters are written.
Elements of the Latin script are nominally left to right, while
those of the Arabic script are nominally right to left. These
characters have what is called strong directionality. Other
characters can be directionally neutral (spaces) or weak
(punctuation).

The DIR attribute specifies an encapsulation boundary which
governs the interpretation of neutral and weakly directional
characters. It does not override the directionality of strongly
directional characters. The DIR attribute value is one of LTR
for left to right, or RTL for right to left, e.g. DIR=RTL.

When applied to TABLE, it indicates the geometric layout of rows
(i.e. row 1 is on right if DIR=RTL, but on the left if DIR=LTR)
and it indicates a default base directionality for any text in
the table's content if no other DIR attribute applies to that
text.

Horizontal and Vertical Alignment Attributes

The alignment of cell contents can be specified on a cell by cell
basis, or inherited from enclosing elements, such as the row, column
or the table element itself.

ALIGN
This specifies the horizontal alignment of cell contents.

<!-- horizontal alignment attributes for cell contents -->
<!ENTITY % cell.halign
"align (left|center|right|justify|char) #IMPLIED
char CDATA #IMPLIED -- alignment char, e.g. char=':' --
charoff CDATA #IMPLIED -- offset for alignment char --"
>

The attribute value should be one of LEFT, CENTER, RIGHT,
JUSTIFY and CHAR. User agents may treat JUSTIFY as left
alignment if they lack support for text justification.
ALIGN=CHAR is used for aligning cell contents on a particular
character.



Raggett Experimental [Page 9]

RFC 1942 HTML Tables May 1996


For cells spanning multiple rows or columns, where the alignment
property is inherited from the row or column, the initial row
and column for the cell determines the appropriate alignment
property to use.

Note that an alignment attribute on elements within the cell,
e.g. on a P element, overrides the normal alignment value for
the cell.

CHAR
This is used to specify an alignment character for use with
align=char, e.g. char=":". The default character is the decimal
point for the current language, as set by the LANG attribute.
The CHAR attribute value is case sensitive.

CHAROFF
Specifies the offset to the first occurrence of the alignment
character on each line. If a line doesn't include the alignment
character, it should be horizontally shifted to end at the
alignment position. The resolved direction of the cell, as
determined by the inheritance of the DIR attribute, is used to
set whether the offset is from the left or right margin of the
cell. For Latin scripts, the offset will be from the left
margin, while for Arabic scripts, it will be from the right
margin. In addition to standard units, the "%" sign may be used
to indicate that the value specifies the alignment position as a
percentage offset of the current cell, e.g. CHAROFF="30%"
indicates the alignment character should be positioned 30%
through the cell.

When using the two pass layout algorithm, the default alignment
position in the absence of an explicit or inherited CHAROFF
attribute can be determined by choosing the position that would
center lines for which the width before and after the alignment
character are at the maximum values for any of the lines in the
column for which ALIGN=CHAR. For incremental table layout the
suggested default is CHAROFF="50%". If several cells in
different rows for the same column use character alignment, then
by default, all such cells should line up, regardless of which
character is used for alignment. Rules for handling objects too
large for column apply when the explicit or implied alignment
results in a situation where the data exceeds the assigned width
of the column.

VALIGN
Defines whether the cell contents are aligned with the top,
middle or bottom of the cell.




Raggett Experimental [Page 10]

RFC 1942 HTML Tables May 1996


<!-- vertical alignment attributes for cell contents -->
<!ENTITY % cell.valign
"valign (top|middle|bottom|baseline) #IMPLIED"
>

If present, the value of the attribute should be one of: TOP,
MIDDLE, BOTTOM or BASELINE. All cells in the same row with
valign=baseline should be vertically positioned so that the
first text line in each such cell occur on a common baseline.
This constraint does not apply to subsequent text lines in these
cells.

Inheritance Order

Alignment properties can be included with most of the table elements:
COL, THEAD, TBODY, TFOOT, TR, TH and TD. When rendering cells,
horizontal alignment is determined by columns in preference to rows,
while for vertical alignment, the rows are more important than the
columns. The following table gives the detailed precedence order for
each attribute, where X > Y denotes that X takes precedence over Y:

ALIGN, CHAR and CHAROFF:

cells > columns > column groups > rows > row groups > default

VALIGN, LANG, and DIR:

cells > rows > row groups > columns > column groups > table > default

Where cells are defined by TH and TD elements; rows by TR elements;
row groups by THEAD, TBODY and TFOOT elements, columns by COL
elements; and column groups by COLGROUP and COL elements. Note that
there is no inheritance mechanism for the CLASS attribute.

Properties defined on cells take precedence over inherited
properties, but are in turn over-ridden by alignment properties on
elements within cells. In the absence of an ALIGN attribute along the
inheritance path, the recommended default alignment for table cell
contents is ALIGN=LEFT for table data and ALIGN=CENTER for table
headers. The recommended default for vertical alignment is
VALIGN=MIDDLE. These defaults are chosen to match the behaviour of
the widely deployed Netscape implementation.

Standard Units for Widths

Several attributes specify widths as a number followed by an optional
suffix. The units for widths are specified by the suffix: pt denotes
points, pi denotes picas, in denotes inches, cm denotes centimeters,



Raggett Experimental [Page 11]

RFC 1942 HTML Tables May 1996


mm denotes millimeters, em denotes em units (equal to the height of
the default font), and px denotes screen pixels. The default units
are screen pixels (chosen for backwards compatibility). The number is
an integer value or a real valued number such as "2.5". Exponents, as
in "1.2e2", are not allowed. White space is not allowed between the
number and the suffix.

The above set of suffices is augmented for certain elements: "%" is
used for the WIDTH attribute for the TABLE element. It indicates that
the attribute specifies the percentage width of the space between the
current left and right margins, e.g. width="50%". For the COL
element, "*" is used with the WIDTH attribute to specify relative
column widths, e.g. width="3*", using the same representation as the
CALS table model.

The TABLE element

<!ENTITY % Where "(left|center|right)">

<!ELEMENT table - - (caption?, (col*|colgroup*), thead?, tfoot?, tbody+)>

<!ATTLIST table -- table element --
%attrs; -- id, lang, dir and class --
align %Where; #IMPLIED -- table position relative to --
-- window --
width CDATA #IMPLIED -- table width relative to window --
cols NUMBER #IMPLIED -- used for immediate display mode --
border CDATA #IMPLIED -- controls frame width around --
-- table --
frame %Frame; #IMPLIED -- which parts of table frame to --
-- include --
rules %Rules; #IMPLIED -- controls rules between cells --
cellspacing CDATA #IMPLIED -- spacing between cells --
cellpadding CDATA #IMPLIED -- spacing within cells --
>

The TABLE element requires both start and end tags. Table elements
start with an optional CAPTION element, optionally followed by either
one or more COL elements, or one or more COLGROUP elements, then an
optional THEAD, an optional TFOOT, and finally one or more TBODY
elements.

ID, CLASS, LANG and DIR
See earlier description of common attributes.

ALIGN
Defines the horizontal position of the table relative to the
current left and right margins. ALIGN=CENTER centers the table



Raggett Experimental [Page 12]

RFC 1942 HTML Tables May 1996


midway between the left and right margins. ALIGN=LEFT positions
the table at the left margin, while ALIGN=RIGHT positions the
table at the right margin. User agents may flow text around the
right handside of the table for ALIGN=LEFT, or the left handside
for ALIGN=RIGHT.

Note you can use <BR CLEAR=LEFT> after the table element if you
want to avoid text flowing along side the table when you have
specified ALIGN=LEFT, or <BR CLEAR=RIGHT> for a right aligned
table. To prevent a right aligned table flowing around something
else, use <BR CLEAR=RIGHT> before the table etc. Greater control
over textflow is possible using style sheets.

WIDTH
Specifies the desired width of the table. In addition to the
standard units, the "%" sign may used to indicate that the width
specifies the percentage width of the space between the current
left and right margins, e.g. width="50%". In the absence of this
attribute, the table width can be determined by the layout
algorithm given later on.

It is recommended that the table width be increased beyond the
value indicated by the WIDTH attribute as needed to avoid any
overflow of cell contents. Such increases should try to avoid
drastic changes to relative column widths specified by the
author. To avoid the need for excessive horizontal scrolling, or
when such scrolling is impractical or undesired, it may be
appropriate to split words across lines.

COLS
Specifies the number of columns for the table. If present the
user agent may render the table dynamically as data is received
from the network without waiting for the complete table to be
received. If the WIDTH attribute is missing, a default of "100%"
may be assumed for this purpose. If the COLS attribute is
absent, a prepass through the table's contents is needed to
determine the number of columns together with suitable values
for the widths of each column.

BORDER
Specifies the width of the border framing the table, see
standard units.

FRAME
Specifies which sides of the frame to render.

<!ENTITY % Frame
"(void|above|below|hsides|lhs|rhs|vsides|box|border)">



Raggett Experimental [Page 13]

RFC 1942 HTML Tables May 1996


VOID
Don't render any sides of the frame.

ABOVE
The top side of the frame

BELOW
The bottom side of the frame

HSIDES
The top and bottom sides of the frame

LHS
The left hand side of the frame

RHS
The right hand side of the frame

VSIDES
The left and right sides of the frame

BOX
All four sides of the frame

BORDER
All four sides of the frame

The value "Border" is included for backwards compatibility with
deployed browsers. If a document includes <TABLE BORDER> the
user agent will see FRAME=BORDER and BORDER=_implied_. If the
document includes <TABLE BORDER=_n_> then the user agent should
treat this as FRAME=BORDER except if _n=0_ for which FRAME=VOID
is appropriate.

Note: it would have been preferable to choose values for FRAME
consistent with the RULES attribute and the values used for
alignment. For instance: none, top, bottom, topbot, left, right,
leftright, all. Unfortunately, SGML requires enumerated
attribute values to be unique for each element, independent of
the attribute name. This causes immediate problems for "none",
"left", "right" and "all". The values for FRAME have been chosen
to avoid clashes with the RULES, ALIGN and VALIGN attributes.
This provides a measure of future proofing, as it is anticipated
that that the FRAME and RULES attributes will be added to other
table elements in future revisions to this specification. An
alternative would be to make FRAME a CDATA attribute. The
consensus of the HTML-WG was that the benefits of being able to
use SGML validation tools to check attributes based on



Raggett Experimental [Page 14]

RFC 1942 HTML Tables May 1996


enumerated values outweighs the need for consistent names.

RULES
Specifies where to draw rules within the table interior.

<!ENTITY % Rules "(none | groups | rows | cols | all)">

NONE
Suppresses internal rulings.

GROUPS
The THEAD, TFOOT and TBODY elements divide the table into
groups of rows, while COLGROUP elements divide the table
into groups of columns. This choice places a horizontal rule
between each row group and a vertical rule between each
column group. Note that every table has at least one row and
one column group.

ROWS
As RULES=GROUPS plus horizontal rules between all rows. User
agents may choose to use a heavier rule between groups of
rows and columns for emphasis.

COLS
As RULES=GROUPS plus vertical rules between all columns.
User agents may choose to use a heavier rule between groups
of rows and columns for emphasis.

ALL
Place rules between all rows and all columns. User agents
may choose to use a heavier rule between groups of rows and
columns for emphasis.

If a document includes <TABLE BORDER> or <TABLE BORDER=_n_> then
the default for the table element is RULES=ALL, except if _n=0_
for which RULES=NONE is appropriate.

CELLSPACING
This attribute is intended for backwards compatibility with
deployed user agents. It specifies the space between the table
frame and the first or last cell border for each row or column,
and between other cells in the table. See standard units.
Greater control will be possible using style sheet languages.

CELLPADDING
This attribute is intended for backwards compatibility with
deployed user agents. It specifies the amount of space between
the border of the cell and its contents both above/below, and



Raggett Experimental [Page 15]

RFC 1942 HTML Tables May 1996


left//right. See standard units. Greater control will be
possible using style sheet languages.

If a fixed width is set for the table or column, the CELLSPACING and
CELLPADDING may demand more space than assigned. Current practice is
for the latter to take precedence over WIDTH attributes when a
conflict occurs, although this isn't required by this specification.

Table Captions

<!ELEMENT caption - - (%text;)+>

<!ENTITY % Caption "(top|bottom|left|right)">

<!ATTLIST caption -- table caption --
%attrs; -- id, lang, dir and class --
align %Caption; #IMPLIED -- relative to table --
>

The optional CAPTION element is used to provide a caption for the
table. Both start and end tags are required.

ID, CLASS, LANG and DIR
See earlier description of common attributes.

ALIGN
This may be used to control the placement of captions relative
to the table. When present, the ALIGN attribute should have one
of the values: TOP, BOTTOM, LEFT and RIGHT. It is recommended
that the caption is made to fit within the width or height of
the table as appropriate. The default position of the caption is
deliberately unspecified.

Note the ALIGN attribute is overused in HTML, but is retained
here for compatibility with currently deployed browsers.

The COLGROUP Element

<!ELEMENT colgroup - O (col*)>

<!ATTLIST colgroup
%attrs; -- id, lang, dir and class --
span NUMBER 1 -- default number of columns in --
-- group --
width CDATA #IMPLIED -- default width for enclosed --
-- COLs --
%cell.halign; -- horizontal alignment in --
-- cells --



Raggett Experimental [Page 16]

RFC 1942 HTML Tables May 1996


%cell.valign; -- vertical alignment in cells --
>


The COLGROUP element acts as a container for a group of columns, and
allows you to set default properties for these columns. In the
absence of a COLGROUP element, all columns in the table are assumed
to belong to a single column group. Each COLGROUP element can
contain zero or more COL elements. COLGROUP requires a start tag,
but the end tag may be omitted. This is useful when defining a
sequence of COLGROUP elements, e.g.

<TABLE FRAME=BOX RULES=COLS>
<COLGROUP>
<COL WIDTH="1*">
<COL WIDTH="2*">
<COLGROUP>
<COL WIDTH="1*">
<COL WIDTH="3*">
<THEAD>
<TR> ...
</TABLE>

COLGROUP elements can be used with the following attributes:

ID, CLASS, LANG and DIR
See earlier description of common attributes.

SPAN
A positive integer value that specifies a default for how many
columns are in this group. This attribute should be ignored if
the COLGROUP element contains one or more COL elements. It
provides a convenient way of grouping columns without the need
to supply COL elements.

WIDTH
Specifies a default width for each of the grouped columns, see
standard units. In addition, the "*" suffix denotes relative
widths, e.g.

width=64 width in screen pixels
width=0.5* a relative width of 0.5

Relative widths act as constraints on the relative widths of
different columns. If a COLGROUP element specifies a relative
width of zero, all of the columns in the group should be set to
their minimum widths, unless they are associated with a COL
element with an overriding WIDTH attribute. When widths are



Raggett Experimental [Page 17]

RFC 1942 HTML Tables May 1996


given in absolute units, the user agent can use these to
constrain the width of the table. The "*" suffix is used to
simplify importing tables from the CALS representation.

ALIGN, CHAR, CHAROFF and VALIGN
Specify values for horizontal and vertical alignment within
table cells. See inheritance order of alignment properties.

The COL Element

<!ELEMENT col - O EMPTY>

<!ATTLIST col -- column groups and --
-- properties --
%attrs; -- id, lang, dir and class --
span NUMBER 1 -- number of columns spanned --
-- by group --
width CDATA #IMPLIED -- column width specification --
%cell.halign; -- horizontal alignment in --
-- cells --
%cell.valign; -- vertical alignment in cells --
>

This optional element is used to specify column based defaults for
table properties. It is an empty element, and as such has no
content, and shouldn't be given an end tag. Several COL elements may
be given in succession. COL attributes override those of the parent
COLGROUP element.

ID, CLASS, LANG and DIR
See earlier description of common attributes.

SPAN
A positive integer value that specifies how many columns this
element applies to, defaulting to one. In the absence of SPAN
attributes the first COL element applies to the first column,
the second COL element to the second column and so on. If the
second COL element had SPAN=2, it would apply to the second and
third column. The next COL element would then apply to the
fourth column and so on. SPAN=0 has a special significance and
implies that the COL element spans all columns from the current
column up to and including the last column. Note that a COL SPAN
does not define a group. It is merely a way to share attribute
definitions.







Raggett Experimental [Page 18]

RFC 1942 HTML Tables May 1996


WIDTH
Specifies the width of the columns, see standard units. If the
element spans several columns then the WIDTH attribute specifies
the width for each of the individual columns - not the width of
the span. In addition, the "*" suffix denotes relative widths,

e.g.

width=64 width in screen pixels
width=0.5* a relative width of 0.5

Relative widths act as constraints on the relative widths of
different columns. If a COL element specifies a relative width
of zero, the column should always be set to its minimum width.
When widths are given in absolute units, the user agent can use
these to constrain the width of the table. The "*" suffix is
used to simplify importing tables from the CALS representation.

ALIGN, CHAR, CHAROFF and VALIGN
Specify values for horizontal and vertical alignment within
table cells. See inheritance order of alignment properties.

Table Head, Foot and Body Elements

<!ELEMENT thead - O tr+>
<!ELEMENT tfoot - O tr+>
<!ELEMENT tbody O O tr+>

<!ATTLIST (thead|tbody|tfoot) -- table section --
%attrs; -- id, lang, dir and class --
%cell.halign; -- horizontal alignment in --
-- cells --
%cell.valign; -- vertical alignment in cells --
>

Tables may be divided up into head and body sections. The THEAD and
TFOOT elements are optional, but one or more TBODY elements are
always required. If the table only consists of a TBODY section, the
TBODY start and end tags may be omitted, as the parser can infer
them. If a THEAD element is present, the THEAD start tag is
required, but the end tag can be omitted, provided a TFOOT or TBODY
start tag follows. The same applies to TFOOT.

Note: This definition provides compatibility with tables created
for the older model, as well as allowing the end tags for THEAD,
TFOOT and TBODY to be omitted.





Raggett Experimental [Page 19]

RFC 1942 HTML Tables May 1996


The THEAD, TFOOT and TBODY elements provide a convenient means for
controlling rendering. If the table has a large number of rows in
the body, user agents may choose to use a scrolling region for the
table body sections. When rendering to a paged device, tables will
often have to be broken across page boundaries. The THEAD, TFOOT and
TBODY elements allow the user agent to repeat the table foot at the
bottom of the current page, and then the table head at the top of
the new page before continuing on with the table body.

TFOOT is placed before the TBODY in the markup sequence, so that
browsers can render the foot before receiving all of the table data.
This is useful when very long tables are rendered with scrolling
body sections, or for paged output, involving breaking the table
over many pages.

Each THEAD, TFOOT and TBODY element must contain one or more TR
elements.

ID, CLASS, LANG and DIR
See earlier description of common attributes.

ALIGN, CHAR, CHAROFF and VALIGN
Specify values for horizontal and vertical alignment within
table cells. See inheritance order of alignment properties.

Table Row (TR) elements

<!ELEMENT tr - O (th|td)+>

<!ATTLIST tr -- table row --
%attrs; -- id, lang, dir and class --
%cell.halign; -- horizontal alignment in --
-- cells --
%cell.valign; -- vertical alignment in cells --
>

The TR or table row element acts as a container for a row of table
cells. The end tag may be omitted.

ID, CLASS, LANG and DIR
See earlier description of common attributes.

ALIGN, CHAR, CHAROFF and VALIGN
Specify values for horizontal and vertical alignment within
table cells. See inheritance order of alignment properties.






Raggett Experimental [Page 20]

RFC 1942 HTML Tables May 1996


Table Cells: TH and TD

<!ELEMENT (th|td) - O %body.content>

<!ATTLIST (th|td) -- header or data cell --
%attrs; -- id, lang, dir and class --
axis CDATA #IMPLIED -- defaults to cell content --
axes CDATA #IMPLIED -- list of axis names --
nowrap (nowrap) #IMPLIED -- suppress word wrap --
rowspan NUMBER 1 -- number of rows spanned by --
-- cell --
colspan NUMBER 1 -- number of cols spanned by --
-- cell --
%cell.halign; -- horizontal alignment in --
-- cells --
%cell.valign; -- vertical alignment in cells --
>

TH elements are used to represent header cells, while TD elements
are used to represent data cells. This allows user agents to render
header and data cells distinctly, even in the absence of style
sheets.

Cells can span multiple rows and columns, and may be empty. Cells
spanning rows contribute to the column count on each of the spanned
rows, but only appear in the markup once (in the first row spanned).
The row count is determined by the number of TR elements. Any rows
implied by cells spanning rows beyond this should be ignored.

If the column count for the table is greater than the number of
cells for a given row (after including cells for spanned rows), the
missing cells are treated as occurring on the right hand side of the
table and rendered as empty cells. If the language context indicates
a right to left writing order, then the missing cells should be
placed on the left hand side.

It is possible to create tables with overlapping cells, for
instance:

<table border>
<tr><td rowspan=2>1<td>2<td>3
<tr><td rowspan=2>4
<tr><td colspan=2>5<td>6
</table>







Raggett Experimental [Page 21]

RFC 1942 HTML Tables May 1996


which might look something like:

/-----------\
| 1 | 2 | 3 |
| |-------|
| | 4 | |
|---|...|---|
| 5 : | 6 |
\-----------/

In this example, the cells labelled 4 and 5 overlap. In such cases,
the rendering is implementation dependent.

The AXIS and AXES attributes for cells provide a means for defining
concise labels for cells. When rendering to speech, these attributes
may be used to provide abbreviated names for the headers relevant to
each cell. Another application is when you want to be able to later
process table contents to enter them into a database. These
attributes are then used to give database field names. The table's
class attribute should be used to let the software recognize which
tables can be treated in this way.

ID, CLASS, LANG and DIR
See earlier description of common attributes.

AXIS
This defines an abbreviated name for a header cell, e.g. which
can be used when rendering to speech. It defaults to the cell's
content.

AXES
This is a comma separated list of axis names which together
identify the row and column headers that pertain to this cell.
It is used for example when rendering to speech to identify the
cell's position in the table. If missing the user agent can try
to follow up columns and left along rows (right for some
languages) to find the corresponding header cells.

NOWRAP, e.g. <TD NOWRAP>
The presence of this attribute disables automatic wrapping of
text lines for this cell. If used uncautiously, it may result in
excessively wide cells. This attribute is defined for backwards
compatibility with deployed user agents. Greater control is
possible with associated style sheet languages (for example for
control over overflow handling).






Raggett Experimental [Page 22]

RFC 1942 HTML Tables May 1996


ROWSPAN, e.g. <TD ROWSPAN=2>
A positive integer value that defines how may rows this cell
spans. The default ROWSPAN is 1. ROWSPAN=0 has a special
significance and implies that the cell spans all rows from the
current row up to the last row of the table.

COLSPAN, e.g. <TD COLSPAN=2>
A positive integer value that defines how may columns this cell
spans. The default COLSPAN is 1. COLSPAN=0 has a special
significance and implies that the cell spans all columns from
the current column up to the last column of the table.

ALIGN, CHAR, CHAROFF and VALIGN
Specify values for horizontal and vertical alignment within
table cells. See inheritance order of alignment properties.

Note: It is recommended that implementors provide support for the
Netscape 1.1 WIDTH attribute for TH and TD, although this isn't part
of the current specification. Document authors are advised to use
the width attribute for the COL element instead.

Recommended Layout Algorithms

If the COLS attribute on the TABLE element specifies the number of
columns, then the table may be rendered using a fixed layout,
otherwise the autolayout algorithm described below should be used.

Fixed Layout Algorithm

For this algorithm, it is assumed that the number of columns is
known. The column widths by default should be set to the same size.
Authors may override this by specifying relative or absolute column
widths, using the COLGROUP or COL elements. The default table width
is the space between the current left and right margins, but may be
overridden by the WIDTH attribute on the TABLE element, or determined
from absolute column widths. To deal with mixtures of absolute and
relative column widths, the first step is to allocate space from the
table width to columns with absolute widths. After this, the space
remaining is divided up between the columns with relative widths.

The table syntax alone is insufficient to guarantee the consistency
of attribute values. For instance, the number of columns specified by
the COLS attribute may be inconsistent with the number of columns
implied by the COL elements. This in turn, may be inconsistent with
the number of columns implied by the table cells. A further problem
occurs when the columns are too narrow to avoid overflow of cell
contents. The width of the table as specified by the TABLE element or
COL elements may result in overflow of cell contents. It is



Raggett Experimental [Page 23]

RFC 1942 HTML Tables May 1996


recommended that user agents attempt to recover gracefully from these
situations, e.g. by hyphenating words and resorting to splitting
words if hyphenation points are unknown.

In the event that an indivisible element causes cell overflow, the
user agent may consider adjusting column widths and re-rendering the
table. In the worst case clipping may be considered if column width
adjustments and/or scrollable cell content are not feasible. In any
case if cell content is split or clipped this should be indicated to
the user in an appropriate manner.

Autolayout Algorithm

If the COLS attribute is missing from the table start tag, then the
user agent should use the following autolayout algorithm. It uses two
passes through the table data and scales linearly with the size of
the table.

In the first pass, line wrapping is disabled, and the user agent
keeps track of the minimum and maximum width of each cell. The
maximum width is given by the widest line. As line wrap has been
disabled, paragraphs are treated as long lines unless broken by <BR>
elements. The minimum width is given by the widest word or image etc.
taking into account leading indents and list bullets etc. In other
words, if you were to format the cell's content in a window of its
own, determine the minimum width you could make the window before the
cell begins to overflow. Allowing user agents to split words will
minimize the need for horizontal scrolling or in the worst case
clipping of cell contents.

This process also applies to any nested tables occuring in cell
content. The minimum and maximum widths for cells in nested tables
are used to determine the minimum and maximum widths for these tables
and hence for the parent table cell itself. The algorithm is linear
with aggregate cell content, and broadly speaking independent of the
depth of nesting.

To cope with character alignment of cell contents, the algorithm
keeps three running min/max totals for each column: Left of align
char, right of align char and un-aligned. The minimum width for a
column is then: max(min_left + min_right, min_non-aligned).

The minimum and maximum cell widths are then used to determine the
corresponding minimum and maximum widths for the columns. These in
turn, are used to find the minimum and maximum width for the table.
Note that cells can contain nested tables, but this doesn't
complicate the code significantly. The next step is to assign column
widths according to the available space (i.e. the space between the



Raggett Experimental [Page 24]

RFC 1942 HTML Tables May 1996


current left and right margins).

For cells which span multiple columns, a simple approach, as used by
Arena, is to evenly apportion the min/max widths to each of the
constituent columns. A slightly more complex approach is to use the
min/max widths of unspanned cells to weight how spanned widths are
apportioned. Experimental study suggests a blend of the two
approaches will give good results for a wide range of tables.

The table borders and intercell margins need to be included in
assigning column widths. There are three cases:

1. The minimum table width is equal to or wider than the available
space. In this case, assign the minimum widths and allow the
user to scroll horizontally. For conversion to braille, it will
be necessary to replace the cells by references to notes
containing their full content. By convention these appear before
the table.

2. The maximum table width fits within the available space. In this
case, set the columns to their maximum widths.

3. The maximum width of the table is greater than the available
space, but the minimum table width is smaller. In this case,
find the difference between the available space and the minimum
table width, lets call it W. Lets also call D the difference
between maximum and minimum width of the table.

For each column, let d be the difference between maximum and
minimum width of that column. Now set the column's width to the
minimum width plus d times W over D. This makes columns with
large differences between minimum and maximum widths wider than
columns with smaller differences.

This assignment step is then repeated for nested tables using the
minimum and maximum widths derived for all such tables in the first
pass. In this case, the width of the parent (i.e. enclosing) table
cell plays the role of the cu


Цялата тема
ТемаАвторПубликувано
* Да си поговорим за FEN ani   31.01.01 17:06
. * А защо да не е? Fen   31.01.01 17:09
. * Прозрение Air Force   31.01.01 17:21
. * Да Fen   31.01.01 17:32
. * Re: Да Air Force   31.01.01 17:36
. * Разчитам на теб! Fen   31.01.01 17:46
. * май и аз ша зема да попитам нещо Xypodilec   31.01.01 19:30
. * Фразата съм я заел Fen   01.02.01 09:50
. * Re: Да си поговорим за FEN Eлeнa Kocтoвa   31.01.01 18:46
. * Re: Да си поговорим за FEN OO7BG   01.02.01 00:31
. * Re: Да си поговорим за FEN cлyчaeн минyвaч_anon   01.02.01 00:37
. * Re: Да си поговорим за FEN nikolai   02.02.01 23:11
. * Re: Да си поговорим за FEN Anisia   31.01.01 19:50
. * Re: Да си поговорим за FEN nbb   31.01.01 22:43
. * Re: Откровено за Егоистите Air Force   01.02.01 09:33
. * Абе Fen   01.02.01 09:53
. * Re: Мразиш хората?!!!! Beibi   10.02.01 13:10
. * Re: Да си поговорим за FEN nbb   31.01.01 22:51
. * Я и аз да питам зу   31.01.01 22:54
. * Защо всеки nbb   31.01.01 22:56
. * няма го зер Xypodilec   31.01.01 22:57
. * Ааа, той се спотайва, зу   31.01.01 22:59
. * Идвам тук, nbb   31.01.01 23:04
. * Абе извъртя ти отговора, зу   31.01.01 23:08
. * Re: Я и аз да питам ООО   31.01.01 23:35
. * Сигурно защото зy   01.02.01 00:03
. * Ще ми изгърмиш покривката! Fen   01.02.01 09:57
. * Re: на всички ani   01.02.01 12:20
. * Аз пък... Fen   01.02.01 12:27
. * Re: Аз пък... ani   01.02.01 12:36
. * Мила Ани, nbb   01.02.01 12:41
. * За nbb ani   01.02.01 12:55
. * Re: За Ани nbb   01.02.01 13:18
. * и аз Xypodilec   01.02.01 12:47
. * Re: и аз XXX   03.02.01 18:32
. * Хубаво е да се трупа това-онова... Fen   01.02.01 12:52
. * Re: на всички Jorji   01.02.01 12:51
. * Re: на всички nbb   01.02.01 12:55
. * За nbb ani   01.02.01 13:07
. * за FEN ani   01.02.01 13:15
. * Re: за Ани nbb   01.02.01 13:26
. * За nbb ani   01.02.01 13:40
. * Re: За Ани nbb   01.02.01 14:00
. * Не, ani Fen   01.02.01 14:03
. * за FEN ani   01.02.01 14:15
. * ей Fen!!! Xypodilec   01.02.01 14:22
. * Абе, cлyчaeн минyвaч_anon   01.02.01 20:38
. * Благодаря ти, Ани, зу   01.02.01 23:47
. * За Зу ani   02.02.01 09:56
. * да, с насмешка беше зу   02.02.01 10:07
. * Re: To puk edna tema :PP BadMood   01.02.01 20:55
. * Дръж! Само така! мяy   01.02.01 22:42
. * Re: Neshto ne razbiram... BadMood   02.02.01 00:29
. * LOL :))))))))))) мяy   02.02.01 11:47
. * Съдейки по Xypodilec   02.02.01 13:41
. * Басирам се, че Fen   02.02.01 14:41
. * ама вярно Xypodilec   02.02.01 14:53
. * Че какво nbb   02.02.01 15:01
. * Ами да... Fen   02.02.01 15:08
. * за FEN ani   02.02.01 15:12
. * Душата ми... Fen   02.02.01 15:22
. * Fen, Xypodilec   02.02.01 18:57
. * Фен, nbb   02.02.01 15:18
. * Ще умрем от скука... Fen   02.02.01 15:20
. * Я пък ти, nbb   02.02.01 15:27
. * скивъйти съ кви сте Xypodilec   02.02.01 19:00
. * А, не, nbb   02.02.01 19:19
. * Re: Прагматично, но практично Гатака   02.02.01 00:35
. * Re: BadMood   02.02.01 21:27
. * издрахтиму! Xypodilec   02.02.01 23:20
. * Че ти да не би nbb   02.02.01 23:39
. * Re: Че ти да не би, ne ne bi. BadMood   02.02.01 23:46
. * жа са Xypodilec   02.02.01 23:55
. * Re: BadMood   02.02.01 23:42
. * Бе броячът е изкукал, lolly   02.02.01 23:50
. * не е броячът Xypodilec   02.02.01 23:57
. * Re: не е броячът nbb   03.02.01 00:21
. * Re: не е броячът Xypodilec   03.02.01 09:17
. * Re`: не е броячът Xypodilec   03.02.01 09:44
. * Re: Re`: не е броячът nbb   03.02.01 12:41
. * ZA ANI I FEN ! sunrise   03.02.01 19:06
. * Re: ZA ANI I FEN ! Babyface   03.02.01 19:41
. * Re: ZA ANI I FEN ! sunrise   03.02.01 19:48
. * Re: ZA ANI I FEN ! Babyface   04.02.01 00:26
. * Re: ZA ANI I FEN ! sunrise   04.02.01 00:51
. * Re: ZA ANI I FEN ! Mal   04.02.01 02:23
. * blagodaria :-) sunrise   04.02.01 03:40
. * Re: blagodaria :-) Babyface   04.02.01 12:45
. * Re: blagodaria :-) sunrise   04.02.01 18:44
. * let's talk about FEN baby absurd   04.02.01 13:14
. * Re: let's talk about FEN baby sunrise   04.02.01 18:48
. * Ех, ani Fen   05.02.01 12:32
. * Re: Ех, Fen, nbb   05.02.01 12:35
. * ОК... Fen   05.02.01 13:24
. * за FEN ani   05.02.01 13:36
. * И аз не очаквах това... Fen   05.02.01 13:43
. * ne beshe ........ sunrise   05.02.01 14:01
. * Re: Ех, ani sunrise   05.02.01 13:37
. * Да... Fen   05.02.01 13:49
. * predlojenie sunrise   05.02.01 14:08
. * Значи ли това Fen   05.02.01 15:32
. * за FEN ani   05.02.01 18:03
. * hm.... sunrise   06.02.01 00:56
. * Браво! Fen   06.02.01 09:05
. * Re: Браво! sunrise   06.02.01 09:13
. * Надявам се да е скоро... Fen   06.02.01 09:20
. * skoro shte e :-) sunrise   06.02.01 09:51
. * Разчитам на теб;) Fen   06.02.01 10:35
. * Re: Разчитам на теб;) sunrise   06.02.01 10:38
. * PAK ZA ANI I FEN sunrise   05.02.01 13:34
. * Уф... стига с това IRC! Fen   05.02.01 13:41
. * Re: Уф... стига с това IRC! sunrise   05.02.01 13:54
. * sun, лесно е Xypodilec   05.02.01 15:53
. * Re: sun, лесно е sunrise   06.02.01 00:43
. * Re: Уф... стига с това IRC! Babyface   05.02.01 18:30
. * Нещо бъркаш понятията! Fen   06.02.01 09:09
. * Re: Нещо бъркаш понятията! Babyface   06.02.01 11:44
. * Re: PAK ZA ANI I FEN Mal   06.02.01 02:28
. * Re: PAK ZA ANI I FEN sunrise   06.02.01 04:55
. * Успокойте малко топката! Fen   06.02.01 09:13
. * spoko :-) sunrise   06.02.01 09:56
. * Всичко това можеше да е за мен... Baньo   06.02.01 10:21
. * Re: Всичко това можеше да е за мен... sunrise   06.02.01 10:42
. * Ама аз не се крия! Fen   06.02.01 10:48
. * Re: Ама аз не се крия! hm...... sunrise   06.02.01 11:04
. * Нищо - най-вероятно... Fen   06.02.01 11:09
. * Re: Нищо - най-вероятно... sunrise   06.02.01 11:16
. * Отговорил съм ти... Fen   06.02.01 11:20
. * Re: Отговорил съм ти... sunrise   06.02.01 12:04
. * тц, така е по-добре, Xypodilec   06.02.01 20:22
. * и още нещо Xypodilec   06.02.01 20:26
. * nishto podobno! sunrise   07.02.01 06:47
. * ANI ? sunrise   06.02.01 11:47
. * за sunrise ani   06.02.01 16:11
. * spokoina :-) sunrise   06.02.01 16:18
. * потрива доволно ръце... Fen   06.02.01 17:19
. * За фен ani   06.02.01 17:36
. * Така си е Fen   06.02.01 17:45
. * за FEN ani   06.02.01 18:09
. * Ех, ani... Fen   06.02.01 18:27
. * ANI sunrise   06.02.01 18:08
. * за sunrise ani   06.02.01 18:13
. * suveti :-) sunrise   06.02.01 18:30
. * Лелеееееее....... Xypodilec   06.02.01 19:27
. * no mercy sunrise   07.02.01 06:55
. * 2 съвета и за двамата имам аз Xypodilec   07.02.01 11:48
. * Re: 2 съвета и за двамата имам аз sunrise   07.02.01 12:25
. * БАСИ! Fen   07.02.01 12:31
. * spoko! sunrise   07.02.01 13:28
. * Усещам аз Fen   07.02.01 13:46
. * за FEN, Sunrise и др. ani   07.02.01 14:18
. * Наистина ме изненада! Fen   07.02.01 14:22
. * за FEN ani   07.02.01 14:25
. * Е ще падне чакане... Fen   07.02.01 14:31
. * Re: Е ще падне чакане... ani   07.02.01 14:36
. * ОхоООооо :) Xypodilec   07.02.01 14:25
. * Re: ОхоООооо :) ani   07.02.01 14:28
. * щото Xypodilec   07.02.01 14:31
. * За Хипо ani   07.02.01 14:40
. * Ааааааааааааааааа Fen   07.02.01 14:44
. * Re: Ааааааааааааааааа ani   07.02.01 14:52
. * Re: за FEN, Sunrise и др. sunrise   07.02.01 15:32
. * sunrise ani   07.02.01 15:44
. * sorry.... sunrise   07.02.01 16:00
. * Re: sorry.... ani   07.02.01 16:31
. * април април, ама Xypodilec   07.02.01 16:42
. * а дали не са малко Xypodilec   07.02.01 16:46
. * :-))) sunrise   07.02.01 17:58
. * За Хипо ani   07.02.01 16:50
. * Re: За Хипо Xypodilec   07.02.01 17:00
. * Re: За Хипо ani   07.02.01 17:03
. * Re: За Хипо Babyface   07.02.01 17:12
. * За бейби ani   07.02.01 17:19
. * Re: За Хипо Babyface   07.02.01 17:01
. * Хей, бебче, Xypodilec   07.02.01 17:30
. * Re: Хей, бебче, (2) - щот пропуснах нещо Xypodilec   07.02.01 17:35
. * Re: Хей, бебче, (2) - щот пропуснах нещо Babyfac_e   07.02.01 18:13
. * mersi :-) sunrise   07.02.01 16:59
. * Re: mersi :-) Babyface   07.02.01 17:05
. * малка си още бейби Xypodilec   07.02.01 17:18
. * Re: малка си още бейби Babyface   07.02.01 17:23
. * :-))) sunrise   07.02.01 17:24
. * Re: :-))) Babyface   07.02.01 17:43
. * bravo ! bravo ! sunrise   07.02.01 17:52
. * Re: bravo ! bravo ! Babyface   07.02.01 18:01
. * ne sum az :-)) sunrise   07.02.01 18:40
. * Fen, ще питам ani нещо! Xypodilec   07.02.01 17:10
. * ani F.na Ani   07.02.01 16:30
. * абе sun, Xypodilec   07.02.01 14:19
. * Re: абе sun, sunrise   07.02.01 15:40
. * Е, за една нощ Fen   07.02.01 11:09
. * Re: Е, за една нощ - ама не е за нощ Xypodilec   07.02.01 11:29
. * Re: Е, за една нощ Babyface   07.02.01 16:02
. * Re: Възможно е croissant   07.02.01 18:47
. * Ами да, Xypodilec   07.02.01 19:03
. * зА ХИПО ani   08.02.01 09:49
. * Уф... Fen   08.02.01 10:08
. * Това не го бях Xypodilec   08.02.01 11:01
. * Re: Това не го бях ani   08.02.01 11:35
. * Добре, но все пак Fen   08.02.01 11:48
. * Re: Добре, но все пак sunrise   08.02.01 12:05
. * Хей, Fen, Xypodilec   08.02.01 11:53
. * За хипо и фен ani   08.02.01 12:04
. * za Ani sunrise   08.02.01 12:08
. * sunrise ani   08.02.01 12:18
. * Re: sunrise Babyface   08.02.01 12:24
. * za Baby sunrise   08.02.01 12:59
. * :-))) sunrise   08.02.01 12:55
. * И за какво ти е Fen   08.02.01 12:18
. * Re: И за какво ти е ani   08.02.01 12:29
. * Ами при мен поне е обратното! Fen   08.02.01 12:35
. * Re: Ами при мен поне е обратното! Babyface   08.02.01 12:50
. * Re: Ами при мен поне е обратното! ani   08.02.01 12:57
. * Re: Ами при мен поне е обратното! Babyface   08.02.01 16:26
. * Това го пиша Fen   08.02.01 18:08
. * Re: Това го пиша Babyface   08.02.01 18:43
. * Re: Ами при мен поне е обратното! sunrise   08.02.01 13:07
. * Защо да ви лъжа? Fen   08.02.01 13:21
. * Re: Защо да ви лъжа? ani   08.02.01 14:26
. * Че какво ти пречи... Fen   08.02.01 14:35
. * Re: Че какво ти пречи... ani   08.02.01 15:08
. * слушай сега (чети, т.е.) Xypodilec   08.02.01 19:44
. * Re: слушай сега (чети, т.е.) sunrise   08.02.01 19:53
. * Re: слушай сега (чети, т.е.) Babyface   08.02.01 20:15
. * aniiiiiiiiiiiiiiiiii Xypodilec   08.02.01 12:39
. * Re: aniiiiiiiiiiiiiiiiii ani   08.02.01 12:53
. * За влюбванията - без коментар! Fen   08.02.01 15:34
. * не разбрах само Xypodilec   08.02.01 21:47
. * Това беше в отговор Fen   09.02.01 10:58
. * Fen, Xypodilec   08.02.01 22:07
. * зА ХИПО ani   09.02.01 10:18
. * za Ani sunrise   09.02.01 10:50
. * Re: za Ani ani   09.02.01 11:03
. * :-))) sunrise   09.02.01 11:21
. * Вярно ли Xypodilec   09.02.01 15:59
. * Re: Вярно ли sunrise   09.02.01 17:45
. * Има решение! Babyface   09.02.01 18:59
. * Знаете ли че? Xypodilec   10.02.01 02:14
. * Re: Знаете ли че? sunrise   10.02.01 03:34
. * Re: Знаете ли че? Babyface   10.02.01 10:05
. * Re: зА ХИПО Babyface   09.02.01 13:08
. * Fen не е сектант и не става за лидер/водач! Fen   09.02.01 11:06
. * Re: Fen не е сектант и не става за лидер/водач! sunrise   09.02.01 12:02
. * Re: Да си поговорим за FEN !Koteto   10.02.01 17:43
. * Защо пък обиди и подигравки??? Xypodilec   10.02.01 20:15
. * Re: Защо пък обиди и подигравки??? !Koteto   11.02.01 08:29
. * Re: Защо пък обиди и подигравки??? Babyface   11.02.01 12:40
. * Миличко, ВЛЮБЕН съм та ушите ми пукат... Fen   11.02.01 13:01
. * Re: Да си поговорим за FEN sunrise   10.02.01 23:06
. * Re: Да си поговорим за FEN Babyface   11.02.01 17:00
. * Не би трябвало да отговарям, но Fen   11.02.01 12:18
. * Re: Да си поговорим за FEN sunrise   11.02.01 13:58
. * Re: Да си поговорим за FEN Babyface   11.02.01 17:35
. * hey.... sunrise   11.02.01 18:13
. * Не се карайте! Fen   12.02.01 09:29
. * Re:ani Aзчo   12.02.01 10:22
. * Re:ani Xypodilec   12.02.01 11:38
. * Това за външността Fen   12.02.01 14:25
. * Абе аз съм Xypodilec   12.02.01 19:23
. * Да де... и аз чакам включване... Fen   12.02.01 19:34
. * Re: Да си поговорим за FEN mya   10.02.01 22:36
. * naistina jalko! sunrise   10.02.01 23:20
. * предпочитам вариант 1 Xypodilec   11.02.01 20:30
. * Re: предпочитам вариант 1 sunrise   11.02.01 20:35
. * Жизнен опит, Xypodilec   11.02.01 21:06
. * Re: Жизнен опит, sunrise   12.02.01 02:08
. * Нима Xypodilec   12.02.01 02:18
. * Re: Нима sunrise   12.02.01 02:27
. * Re: Нима Xypodilec   12.02.01 03:18
. * mmdaa sunrise   12.02.01 07:07
. * "sredno zadovoliavashto bih kazala" - хм Xypodilec   12.02.01 08:11
. * Re: "sredno zadovoliavashto bih kazala" - хм sunrise   12.02.01 08:23
. * Знам аз, че за Fen трябва да говорим, обаче Xypodilec   12.02.01 08:56
. * Re: Знам аз, че за Fen трябва да говорим, обаче sunrise   12.02.01 21:06
. * Re: Знам аз, че за Fen трябва да говорим, обаче Xypodilec   12.02.01 21:36
. * iznenada sunrise   12.02.01 21:47
. * Аз май ти бях споменал нещо за Xypodilec   12.02.01 21:51
. * Re: Аз май ти бях споменал нещо за sunrise   12.02.01 21:55
. * тц, Xypodilec   12.02.01 22:45
. * i az de :-))) sunrise   12.02.01 22:51
. * Re: Да си поговорим за FEN Anisia   12.02.01 22:54
. * Re: Да си поговорим за FEN ani   13.02.01 23:35
. * Слушай момичето! Fen   14.02.01 08:47
. * Re: Слушай момичето! ani   14.02.01 09:55
. * Я си дай точното работно време Fen   14.02.01 10:40
. * Re: Я си дай точното работно време ani   14.02.01 10:44
. * Е нали само белот ще играем;) Fen   14.02.01 11:10
. * Re: Е нали само белот ще играем;) ani   14.02.01 11:20
. * Подробности! Fen   14.02.01 11:34
. * Re: Подробности! ani   14.02.01 11:55
. * За фокусник-аматьор като мен Fen   14.02.01 12:02
. * Re: За фокусник-аматьор като мен ani   14.02.01 12:07
. * Сигурно имам... Fen   14.02.01 12:10
. * Re: Сигурно имам... ani   14.02.01 12:18
. * ОК... ще опитам! Fen   14.02.01 12:28
. * niama takova neshto! sunrise   14.02.01 16:25
. * Re: niama takova neshto! ani   14.02.01 16:33
. * off mani mani sunrise   14.02.01 16:52
. * Абе, мен може и да ме няма, но фсичко нъблюдавам! Xypodilec   14.02.01 17:00
. * Re: Абе, мен може и да ме няма, но фсичко нъблюдавам! sunrise   14.02.01 17:07
. * Re: Абе, мен може и да ме няма, но фсичко нъблюдавам! ani   14.02.01 17:18
. * Re: Абе, мен може и да ме няма, но фсичко нъблюдавам! ani   14.02.01 17:15
. * Re: Абе, мен може и да ме няма, но фсичко нъблюдавам! sunrise   14.02.01 18:01
. * Re: Абе, мен може и да ме няма, но фсичко нъблюдавам! Babyface   14.02.01 23:50
. * niama podobni neshta sunrise   15.02.01 00:04
. * Re: Да си поговорим за FEN nbb   17.02.01 16:19
. * Оф, недей така! Fen   17.02.01 16:29
. * Re: Оф, недей така! nbb   17.02.01 16:46
. * zabravi drun sunrise   18.02.01 05:16
. * Не мога, nbb   18.02.01 09:11
. * Re: Не мога- xa xa sunrise   18.02.01 12:24
. * Да бе, вярно, nbb   18.02.01 12:39
. * Re: Да си поговорим за FEN Бишkoтka   07.03.01 18:08
. * Re: Да си поговорим за FEN nbb   07.03.01 23:21
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.