Как вставить данные в таблицу html. Применение пустых ячеек. Уральский государственный педагогический университет

То таблицы играют очень важную роль в создании невидимого каркаса для веб-страницы. А это поможет равномерно и красиво расположить текст, меню, картинки и т.д.
Для лучшего понимания, о чем я пытаюсь вам рассказать, посмотрите на пример каркаса веб-страницы:

Итак, как в HTML сделать простую таблицу ?
Для постройки таблицы необходимо использовать три тега:

TABLE этот тег нужен для открытия таблицы. Это, своего рода, контейнер, в котором содержатся другие элементы. Вот загнул так, что без пончика не разобраться. Ничего, разберетесь, когда увидите пример.
Закрывающий тег обязателен.

Таблица состоит из ряда

ряд 1 ряд 1
ряд 2 ряд 2
ряд 3 ряд 3
ячейка 1 ячейка 2
ячейка 1 ячейка 2
ячейка 1 ячейка 2

TR создает новый ряд таблицы. Закрывающий тег обязателен.

TD создает новую ячейку в ряду. Закрывающий тег обязателен.

Давайте рассмотрим пример, чтобы лучше понять все выше сказанное:

Таблицы в HTML

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2
ряд 3 ячейка 1 ряд 3 ячейка 2

Вот результат:

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2
ряд 3 ячейка 1 ряд 3 ячейка 2

Давайте все объясню.
Перед каждым созданием новой таблицы открывается тег

.
Дальше, размещаем в середине контейнера
тег , что говорит о начале нового ряда.
В этом ряду вставляем две ячейки с содержанием при помощи тега

Закрываем ряд тегом .
Открываем другой ряд тегом
Закрываем ряд тегом .
Открываем третий ряд тегом и вставляем в него снова две ячейки.
Закрываем ряд тегом .
Закрываем таблицу тегом
ряд 1 ячейка1 ряд1 ячейка2
.

Я думаю, разобрались? Если кто-то забыл, что такое атрибут border , который я использую вместе с тегом

, напоминаю, что это толщина рамки. Если в border будет установлено значение «0» , тогда границы таблицы будут невидимые.

Посмотрите парочку примеров созданных таблиц и можно идти дальше:

Таблицы в HTML

ряд 1 ячейка 1
ряд 2 ячейка 1

Результат:

Для того чтобы вставить картинку в таблицу, нужно владеть элементарными начальными знаниями о том, как вставляется изображение в HTML файл. Об этом я рассказываю в . Теперь, когда вы знаете основные нюансы об изображении в HTML, можно попробовать вставить картинку в таблицу. Это можно сделать следующим образом:

в строку между тегами вставить изображение.

Таблицы в HTML

ряд 1 ячейка 1 ряд 1 ячейка 2

Результат:

ряд 1 ячейка 1 ряд 1 ячейка 2

А как объединить ячейки в таблице?

Чтобы объединить ячейки в таблице, вам нужно использовать такие атрибуты:
COLSPAN – определяет количество столбцов.
По умолчанию значение 1.
ROWSPAN – определяет количество рядов.
По умолчанию значение 1.


объединяем ячейки в верхнем ряду с помощью атрибута colspan :

Таблицы в HTML

ряд 1 ячейка 1+2
ряд 2 ячейка 1 ряд 2 ячейка 2

Результат:

Как установить размер таблицы?

Чтобы задать высоту и ширину таблицы, воспользуйтесь такими атрибутами:

WIDTH – ширина таблицы. Размер задается в пикселях или в процентах.
HEIGHT – высота таблицы. Размер задается в пикселях или в процентах.

Таблицы в HTML

ряд 1 ячейка1ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2

Результат:

Выравнивание содержимого в таблице

Чтобы выровнять внутри таблицы содержимое (текст, картинки), можно воспользоваться такими атрибутами:

ALIGN горизонтальное выравнивание содержимого в таблице.
К атрибуту ALIGN присваивается значения: left (по умолчанию) , center , right .
left -
прижать содержимое к левой части;
center – установить по центру;
right -
прижать содержимое к правой части

VALIGN вертикальное выравнивание содержимого в таблице.
К атрибуту VALIGN присваивается значения: top , bottom , middle .
top прижать содержимое к верху;
bottom прижать содержимое к низу;
middle установить содержимое посередине

Таблицы в HTML

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2

Результат:

Как сделать фон таблицы?

Можно также задать фон таблице для всех ее ячеек вместе взятых, а также для каждой ячейки по отдельности. Можно задать фон цветом, а можно и картинкой. Для фона существуют два атрибута:

BGCOLOR – цвет фона всей таблицы или к каждой ячейке по отдельности. Цвет задается кодом или словом.
BACKGROUND –фон в таблице заполняется рисунком.

Внимание: если вы ходите задать фон цветом или фоновым рисунком всей таблице, атрибуты нужно установить в теге

. А если только к определенной ячейке, тогда в тег
.

Для лучшего понимания посмотрите пример:

Таблицы в HTML

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2

Результат:

Внимание: если картинка по размеру меньше за ячейку, тогда она будет повторяться, пока не заполнит ячейку до конца. Если картинка больше за ячейку, тогда фон картинки будет обрезан по размерам ячейки.

И напоследок расскажу еще о двух полезных атрибутах .

В случае, если вам вдруг захочется увеличить расстояние между всеми ячейками, помогут следующие атрибуты:

CELLPADDING –расстояние между рамкой каждой ячейки html таблицы и содержимым в ней материалом.

Таблицы в HTML

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2

Результат:

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2

CELLSPACING –расстояние между границами соседних ячеек.

Таблицы в HTML

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2

Результат:

ряд 1 ячейка1 ряд1 ячейка2
ряд 2 ячейка 1 ряд 2 ячейка 2

Фух, рассказал!
Надеюсь, с задачей я справился и доступно объяснил все, что я знал про html таблицы . А вам, рекомендую хорошо закрепить материал.
Попробуйте создать собственную таблицу, а лучше целый каркас для веб-страницы из таблицы html.
Всего вам хорошего!
Спасибо, что посетили мой блог

Задача

Создать таблицу и указать её параметры (поля и расстояние между ячейками) через стили.

Решение

Таблица состоит из строк и столбцов ячеек, которые могут содержать текст и рисунки. Для добавления таблицы на веб-страницу используется тег

. Этот элемент служит контейнером для элементов, определяющих содержимое таблицы. Любая таблица состоит из строк и ячеек, которые задаются соответственно с помощью тегов и задает строки, а точно так же, как и данные таблицы. Для строки могут задаваться следующие переменные:

1. Уже известные вам border, bordercolor и bgcolor.

2. Align - выравнивание текста в строке. Может принимать значения left, center и right.

3. Valign - данный тэг выравнивает текст по вертикали. Принимает следующие значения:

  • top - текст выравнивается по верхней границе;
  • middle - по центру;
  • bottom - по нижней границе.

Пример оформления строки:

;
  • ;
  • ;
  • .

    Параметры ячеек

    И последнее, на что стоит обратить внимание тем, кто желает знать, как сделать таблицу в HTML - параметры отдельных ячеек, как обычных, так и заглавных. По сути, все делается точно так же, как и для таблицы или строки. Единственное, добавляется еще два немаловажных элемента:

    1. Colspan - данный параметр указывает количество столбцов, на которые может простираться ячейка.

    2. Rowspan - указывает уже количество строк, которое занимает данная ячейка.

    Так как оформление ничем не отличается от прописывания строки, то не будем приводить пример кода.

    Выводы

    Сделать таблицу не так сложно, как может показаться на первый взгляд. Главное при написании ее кода - усидчивость и внимание.

    Что касается того, как вставить таблицу в HTML, то ее шифр достаточно скопировать и вставить именно в то место вашей страницы, в котором она, по вашему мнению, должна располагаться.

    Не бойтесь экспериментировать, и вскоре вы в совершенстве овладеете техникой создания таблиц. Успехов!

    Таблицы в HTML настолько функциональны, что с помощью них можно верстать целые сайты (читайте ). Сейчас мы поговорим о вставке на веб-страницу несложных HTML-таблиц, разбирая только разметку, но не касаясь оформления, потому что украшать таблицы лучше с помощью CSS-стилей.

    Теги и атрибуты таблиц

    Вот основные элементы, которые нужны для создания таблиц:

    . Таблица должна содержать хотя бы одну ячейку (пример 1). Допускается вместо тега использовать тег . Текст в ячейке, оформленной с помощью тега , отображается браузером шрифтом жирного начертания и выравнивается по центру ячейки. В остальном, разницы между ячейками, созданными через теги и нет.

    Пример 1. Создание таблицы

    HTML5 IE Cr Op Sa Fx

    Тег table

    Ячейка 1 Ячейка 2
    Ячейка 3 Ячейка 4

    Порядок расположения ячеек и их вид показан на рис. 1.

    Рис. 1. Результат создания таблицы с четырьмя ячейками

    Атрибут border тега

    допустимо добавлять только с пустым значением (
    ) или равным 1. Все остальные значения не проходят валидацию.

    Для управления полями внутри ячеек используется стилевое свойство padding , которое добавляется к селектору td . Расстояние между ячейками меняется свойством border-spacing (пример 2) добавляемым к селектору table , браузер IE понимает его только с версии 8.0.

    Пример 2. Поля внутри ячеек

    HTML5 CSS 2.1 IE Cr Op Sa Fx

    Тег table

    Заголовок 1Заголовок 2
    Ячейка 3Ячейка 4

    Таблица с полями и расстоянием между ячейками показана на рис. 2. Аналогичного результата можно добиться и с помощью рамки белого цвета вокруг ячеек.

    Рис. 2. Поля в ячейках таблицы

    Таблицы - одни из наиболее важных, но в тоже время сложных элементов, которые должны присутствовать на веб-страницах. С их помощью удобно подавать важную и полезную информацию в довольно сжатой форме. Конечно, большинство редакторов в шаблонах, работающих на различных движках, позволяют автоматически вставлять таблицу на страницу сайта или отдельной публикации, но что, если дизайн веб-ресурса, его страницы создаются с нуля? Тогда перед начинающим мастером может встать проблема: как сделать Давайте разберемся, как же правильно и быстро создать данный элемент.

    Выбираем редактор

    В первую очередь, приступая к созданию таблицы, следует определиться с редактором, в котором вы будете работать. Конечно, проще всего выбрать ту программу, в которой вы создаете основной код сайта. Но лучше всего использовать для этих целей старый добрый блокнот.

    Вы можете спросить, для чего усложнять себе жизнь, ведь если делать все сразу в редакторе, то и результат можно увидеть тоже сразу, еще и подсказки программы использовать.

    Да, это действительно так, но, создавая таблицу с чистого листа, вы не только сможете досконально изучить сам принцип ее создания, но и не допустить досадных опечаток и ошибок в основном коде. Иногда случается так, что курсор случайно перемещается вниз, и в процессе написания в код закрадывается ошибка, которую порой сложно найти. Создав таблицу в блокноте, вы сможете скопировать ее шифр и вставить в нужное вам место.

    Алгоритм создания таблицы

    Для начала составим краткий алгоритм, как сделать таблицу в HTML. Это нужно для того, чтобы вы понимали последовательность каждого шага. Затем разберем, как именно выполнять каждый из пунктов.

    Начнем с подготовительных действий.

    1. Рисуем на листе бумаги схематическое изображение таблицы.

    2. Подсчитываем количество строк и ячеек. Если количество последних разное - считаем для каждого рядочка отдельно.

    3. Определяем в строке количество ячеек-заголовков (к примеру, ячейки «№», «Имя» и т. д.).

    4. Записываем основные параметры таблицы - цвет, высоту и ширину, выравнивание текста - в общем, все, что вам покажется нужным.

    1. Вставляем тэги таблицы.

    2. Вставляем тэги строк исходя из того количества, которое вам нужно.

    3. В строках вставляем тэги ячеек (обычных и заглавных), также исходя из того количества, которое записано у вас на бумаге.

    4. Задаем параметры для таблицы в целом.

    5. При надобности задаем показатели для отдельных ячеек.

    6. Заполняем наши ячейки текстом.

    Создаем таблицу

    Итак, вы выбрали редактор, теперь давайте разберемся, как создать таблицу в HTML. Тэг, с помощью которого в код страницы вставляется таблица (

    ), является парным, то есть начинается наша конструкция с данного тэга, а заканчивается
    .

    Вставив тэги таблицы, переходим к созданию строк и ячеек.

    Сразу отметим, что данные элементы также являются парными. Тэг

    - ячейки.

    Для заглавных ячеек следует использовать парный элемент

    .

    Как уже говорилось, первым делом следует оформить строки, затем в них прописывать уже ячейки. Для того чтобы не запутаться, советуем делать либо отступы между каждым блоком в одну-две строчки, либо же прописывать новый блок элементов, используя клавишу "Tab".

    Как это может выглядеть? Примерно так:

    • ;
    • ;
    • ;
    • ;
    • ;
    • ;
    • ;
    • ;
    • № п/п Фамилия
      1;
    • Иванов
      .

    Как видите, ничего сложного в этом нет. Главное - не запутаться в количестве строк и ячеек. Иначе таблицу может перекосить.

    Мы с вами разобрали создание таблицы в HTML, теперь можем переходить к параметрам как самой матрицы, так и ее строк и ячеек.

    Параметры таблицы

    Когда код написан, следует обратить внимание на следующие пункты: выравнивание в границ, фона, текста и прочее.

    Параметры таблицы задаются в тэге

    . К ним относятся:

    1. Border - ширина границ. Задается целым числом. По умолчанию границы любой таблицы равны нулю.

    2. Bordercolor - цвет границы. Может задаваться как шестнадцатеричным кодом цвета (#00008B), так и его названием на английком (DarkBlue). По умолчанию он всегда серый.

    3. Bgcolor - Также задается с помощью кода или названия.

    4. Align - выравнивание текста за таблицей. По умолчанию - по левому краю. Есть следующие варианты данного параметра:

    • left - обтекание справа;
    • right -обтекание слева;
    • center - вывод таблицы по центру без обтекания.

    5. Width и height - ширина и высота таблицы. Может задаваться как в пикселях, так и в процентах (относительно размера браузера окна).

    Прописывая тот или иной показатель, следует обратить особое внимание на оформление. После указания параметра должен идти знак "равно", после которого в кавычках указывается заданное значение.

    Что касается цвета текста, то его оформляют так же, как и обычный текст в формате HTML.

    Пример оформления таблицы:

    ;
  • ;
  • ;
  • ;
  • ;
  • ;
  • ;
  • ;
  • № п/пФамилия
    1;
  • Иванов
    .

    Параметры строк

    Итак, мы уже разобрались, как сделать таблицу в HTML и прописать основные ее параметры. Но что, если нам нужно выделить строку? Оформить ее не так, как основной текст таблицы?

    Параметры строки прописываются в тэге

    № п/пФамилия
    - контейнер, внутри которого располагается таблица (такой же, как
      для маркированных или
        для нумерованных списков).
      1. border - атрибут, определяющий толщину рамок. Вместо него лучше использовать свойство border CSS.
    задаёт подпись таблицы. Контейнер можно не использовать, но если вы всё-таки решили озаглавить таблицу, то ставьте его сразу после тега , вне ячеек и строк.
  • - парный тег, содержащий строку таблицы (ячейки, расположенные на одном уровне по горизонтали).
  • , столько ячеек в ней и будет: один тег - одна ячейка.
  • позволяет группировать столбцы, быстро и не засоряя код задавать им общие характеристики. С помощью контейнера можно отделять логические части таблицы друг от друга. Располагается после тега mustdie forever, а тот факт, что ошибку быстрее скрыть, чем исправить ("Проще добавить к тысяче картинок в ячейках быэр чем жать бекспейс и убирать пробелы в этих ячейках после картинок") ещё не означает, что к уже имеющимся ошибкам нужно добавлять новые - практика показывает, что спрятанные ошибки имеют препоганое (но логичное) свойство всплывать потом в самых неожиданных местах.

    Марьяна: очень интересное наблюдение относительно hspace=0, vspace=0 - я никогда не наблюдал, чтобы явное указание нулевых отступов в картинках что-то меняло. Буду благодарен за пример (просто любопытно:-)).

    Владислав Пустынский, вы зря так про
    и бэкспейсы.
    - лиш часный случай.
    Но я все-же решусь отметить, что более общее решение это все-же
    после .
    Вполне типовая задача:

    . . .


    - тег, создающий ячейку заголовка таблицы. Внешне её содержимое отличается от контента в других ячейках - обычно текст внутри обозреватель выделяет жирным и размещает по центру.
  • - контейнер, с помощью которого создаётся простая ячейка. Сколько таких тегов будет содержать строка (тег
    , если его нет, то после .
  • используется для той же цели, что и . может содержать , но не наоборот.
  • span - атрибут, задающий число столбцов, к которым применяются свойства контейнера
  • .
  • , и - контейнеры, которые позволяют разделить таблицу соответственно на верхнюю (заголовки), основную (тело) и нижнюю (итоговую) части. В HTML-таблице последовательность этих тегов такая же, как последовательность контейнеров , и
    в HTML-документе.
  • colspan нужен для объединения ячеек в строке. Значение атрибута содержит цифру, которая и задаёт количество объединяемых ячеек.
  • rowspan объединяет ячейки по столбцам.
  • Пример создания таблицы

    Создайте документ формата HTML и скопируйте в него следующий код:

    Пример таблицы

    Инструменты создания сайтов
    НазначениеИнструмент
    РазметкаHTMLXHTML
    ОформлениеCSS
    РазработкаPHPPython

    В браузере документ будет выглядеть так:

    Разберём, какие строчки кода за что отвечают.

    • - открыли таблицу, задав ей толщину рамок.
    • - озаглавили её.
    • - открыли строку.
    • - создали ячейку с оформлением заголовка.
    • - создали вторую заголовочную ячейку в строке. Параметром colspan указали, что эта ячейка должна занимать по горизонтали две.
    • - закрыли строку. Аналогично создали остальные строки.
    • - добавили вторую строку таблицы уже с обычными, а не заголовочными, ячейками. Аналогично вставили последующие строки и ячейки.
    • Инструменты создания сайтов
      Назначение Инструмент
      Разметка HTML XHTML
      - закрыли таблицу.

    У меня таблица из двух ячеек. Первая ячейка имеет ширину 200px, в нее вставляется изображение размером 200px*1000px, изображение выравнивается по верхнему краю: align="top", атрибуты cellspacing и cellpadding для всей таблицы установлены "0". Содержимое второй ячейки небольшое, много места не занимает, так что высота таблицы определяется вертикальным размером моего изображения. Но почему-то между нижней границей изображения и нижней границей таблицы появляется небольшой зазор - пикселей пять, хотя, как я сказала, cellpadding="0". Откуда берется этот ужасный зазор? У меня изображение является декоративным элементом, оно должно пройти по краю страницы сверзу донизу, этот пустой промежуток все портит.

    Алина, проследите, чтобы вслед за закрывающей скобкой тега сразу шёл закрывающий :

    ...

    в противном случае, пробел, перевод строки или символы табуляции будут показываться, как тот самый пробел.

    Кроме того, выравнивать содержимое ячейки лучше не через align="top" в , а добавив valign="top" в тег

    .

    Проще всё равно пользоваться поиском с регэкспами, но предмета спора нет никакого — всё зависит от ситуации и надо использовать любой из двух приемлемых методов (например, если изображение является inline-image, то есть вставляется в строку текста, то
    не спасёт).

    Ладно. Скорее всего, верный совет/ответ дан Алексеем сразу же во втором постинге; конструкции типа



    И независимо ни от чего картинка будет сразу "под таблицей" без всяких отсутпов.
    Хотя, конечно, этот пример не отрицает, что надо писать без "энтеров" и пробелов после .

    Владислав Пустынский: Да, я себе буду благодарна тоже:) Как только поймаю - скажу. Как-то я пыталась экспериментировать и ничего не получилось, я засомневалась в своем подозрении, но потом в работе опять несколько раз всплывал такой же случай... На досуге повтыкаю...

    Dmitriy: боюсь, я не вполне понял типовую задачу... В сочетании





    100

    картинка будет сразу под таблицей без всяких отступов в любом случае, ставите Вы разрыв строки после картинки или нет. Другого ждать не приходится: таблица - блочный элемент. Вертикальный отступ между таблицей и картинкой может появиться, лишь если его туда поставить явно (не пишите


    ! это неправильно! можно только

    ,

    И т. п.!) Мне даже непонятно, на что может повлиять
    после картинки кроме как на положение следующих за картинкой элементов:-) Или не понял я чего...

    После особенно эффективен в тех случаях (и является единственным решением, между нами говоря), когда не вложен ни во что больше, то есть „сам по себе“. Тогда после него не образуется никаких подвисших пробелов и „неправильных“ отступов.

    Самым надёжным способом избежания появления лишних пробелов (согласование четырёх имён в родительном падеже:-)) является нерасстановка этих пробелов в процессе вёрстки страницы (три имени в родительном падеже). Не нужен пробел после картинки - НЕ СТАВЬТЕ ЕГО!!!

    Сравните конструкции:







    - гадкий промежуток имеется. Мы можем, конечно, поставить после картинки
    . Логики это документу не прибавит, но возникнет угроза, что какой-нибудь броузер завтрашнего дня будет действовать логичнее и не станет по собственному произволу игнорировать пустые строки в самом верху и самом низу таблицы (такое поведение нигде не документировано, насколько мне известно). Не проще ли убить саму ошибку, чем вышибать её другой ошибкой? Кстати, подстановка
    или
    вместо
    приводит к тому же "положительному" результату, хотя и нарушает вдобавок ещё и нестинг... :-(

    Ага, пробел убрала, все сразу нормально получилось:)
    Да, а выравнивание у меня в теге ячейки и стояло, ошиблась я с align="top"

    А вот что за идея поставить
    ?? В чем тут фокус? Когда я у себя поставила
    зазорище стал еще больше, так что я вас не пойму... Изображение не вставляется в строку, оно служит фоном для меню...
    И что такое "регэксп" можно спросить?
    И зря вы, что автора проблема не интересует:)) Автора она очень даже интересует, только у автора интернета нет, вернее, есть, но только ночной, а по ночам сидеть я не привыкла:))
    Простите, еще такой вопрос: а если я свое изображение в качестве фона использую, приписываю его вначале, а потом абсолютным позиционированием накладываю другие изображения-кнопки, то как же у меня после первого изображения может ячейка сразу закрыться? Кстати, еще один есть вопрос по этому поводу: когда я экспериментировала, пытаясь понять, откуда же берется проклятый промежуток (кстати, почему же броузер так интерпретирует разрыв строки?? У меня было:

    ,
    но я читала, что такие разрывы строки броузер вообще никак не интерпретирует, если нет предварительного форматирования

    Это не всегда так, получается?),
    так вот, когда я экспериментировала, то сделала ширину ячейки таблицы больше ширины изображения. И обнаружила, что правее изображения и чуть его ниже идет цветная полоса длиной примерно 5 пикселей. Тогда я убрала все свои кнопки и стала налагать их одну за другой. Поставила для них border="1" и обнаружила, что у первых двух изображений-ссылок рамка фиолетовая, а у остальных синяя (что это значит и почему так - не могу понять), и что моя полоска тоже имеет цвет переходящий из фиолетового в синий. И с каждой кнопкой полоска становится все длинее... Что же это такое, братцы?? Тогда я взяла и свое изображение-фон вставила не сразу после открытия ячейки, а перед ее закрытием, т.е. сначала, кнопки абсолютно отпозиционированные, а в конце уже фон. Полоска исчезла. Правда, на мой зазор это не повлияло:) Что это было, мне никто не растолкует??
    И вот еще. Я считала, что раз у моих кнопок нет z-индекса, а фон я вставляю позже, то он должен наложиться на них и все закрыть. Но, очевидно, абсолютно отпозиционированные изображения и просто изображения - вещи качественно разные, и к ним обычный подход не применим, т.е. то, что пишется позже, накладывается сверху, если только у него нет более высокого z-индекса? Или у абсолютно-отпозиционированных изображений этот z-индекс заведомо больше, чем у обычных?

    Алина, первый общий ответ в непонятных случаях, когда сложно описать эффект (со всевозможными режимами позиционирования и наложения) — „покажите ваш код, лучше ссылкой“.

    По поводу нескольких из остальных вопросов я просто нарисую страницу с примерами. Так всем будет лучше.

    Алина: прошу прощения за неверное заключение о пропаже у Вас интереса к вопросу:-)))

    > откуда же берется проклятый промежуток (кстати,
    > почему же броузер так интерпретирует разрыв строки?? У меня было:
    >
    >
    > ,
    > но я читала, что такие разрывы строки броузер вообще никак не интерпретирует

    Всё просто. У Вас имеется ячейка. Посмотрите, какие элементы имеются в ячейке. Во первых, это картинка. Во вторых, это два сброса строки после неё. Поскольку дополнительной разметки нет, то броузер воспринимает каждый сброс строки, как пробел, а затем два полученных пробела превращает в один. Таким образом, в ячейке остаётся картинка и следующий за ней пробел, причём для броузера они располагаются в одном ряду. "Убивать" этот последний пробел броузер сам не станет - для него это совершенно законный символ. При вёрстке броузер стремиться максимально сжать ячейку по горизонтали. В связи с этим от разрывает имеющийся ряд из двух элементов, перенося последний из них (т. е. пробел) на новую строку. То есть разрыв рождается не из разрыва строки в Вашем коде, а из дополнительного элемента-пробела, который в Вашем коде присутствует неявно, представленный двумя сбросами строки.

    Вторая часть Вашего вопроса (эксперименты с кодом) требуют источника. Покажите Ваш код, а лучше повесьте плоды экспериментов в Сеть.

    Если Вы не задаёте явно z-индекс, то абсолютно и относительно позиционированные элементы действительно располагаются поверх статических элементов, причём позднее определённые элементы перекрывают раннее определённые и перекрывают все статические элементы (статические элементы не могут перекрываться в принципе, хотя иногда броузеры "глючит" и этот закон нарушается). Порядок перекрытия может быть изменён явным заданием z-индекса в стилях. По умолчанию, у всех элементов 0-й z-индекс, но абсолютно и относительно позиционированные элементы будут всегда располагаться поверх статических независимо от места их определения, если только в z-индексах не прописано иначе.

    > почему неправильно писать:
    ??
    HTML - язык логической разметки, и такая конструкция нарушает логику документа. Любой документ состоит из блочных элементов, внутри блочных элементов располагаются строчные. Строчные элементы не должны располагаться вне блочных. В вышеописанной конструкции строчный элемент
    помещён в то место потока, где по определению отсутствует определение какого-либо блочного элемента, т. е. строчный элемент не является наследником никакого блочного элемента. Исправляю свою же ошибку: по указанной причине конструкция
    тоже неверна.
    Ссылки