Точно работает в: IE 5.0, 5.5, 6, 7; Opera 7, 8, 9; FF любой. Доктайп отсутствует нарочно. Если его поставить (любой), то у IE 6 и IE 7 появляется полоса прокрутки (они считают 100% td.main как высоту всего окна, а не как 100% от свободного места). Все остальное валидно. HTML: <html lang="ru"> <head> <title>height: 100%</title> <style type="text/css"> table.main { width: 100%; height: 100%; empty-cells: show; border-collapse: collapse; } td.top { height: 100px; } td.main { height: 100%; border-top: 1px solid green; border-bottom: 1px solid green; } td.bottom { height: 120px; background-color: blue; color: white; } </style> </head> <body> <table class="main"> <tr><td class="top">Header content</td></tr> <tr><td class="main">Main content</td></tr> <tr><td class="bottom">adress<br>something else<br>mail<br>phone/fax<br></td></tr> </table> </body> </html>
Спасибо, Алекс! Но это решение я помню с детства Оно работает даже с <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> Начальство просит XHTML
Да нет, они как раз знают, что это такое. Поэтому и ищу решение, чтобы не сесть в лужу, когда скажу, что нет решения, а они найдут его. Что-то подходящее для IE6 только у Вас нашла. Разбираюсь сейчас, что вот это такое: height:expression(this.clientHeight-30); и почему оно в 7-й версии не работает.
у меня всё прекрасно работает. ps: а, ты о том примере с таблицей... дык это не кошерный пример кошерный тута
Не знаю уже. Наверное, не принципиально. Если есть решение дивами и не жалко, то спасибо! Я для таблицы нашла уже javascript'ы. Вот так получилось, если кому-то интересно: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>test</title> <style type="text/css"> html, body,table,div { margin:0px; padding:0px; width:100%; height:100%; } </style> </head> <body onLoad=" alert('offsetHeight=' +document.getElementById('container').offsetHeight); alert('clientHeight=' + document.body.clientHeight); document.getElementById('td1').style.height=document.getElementById('container').offsetHeight - 40 +'px' "> <div id="container"> <table> <tr><td id="td1" style="height: auto">TD centered text</td></tr> <tr><td style="height: 30px; background: #ccc;">bottom block 30px height</td></tr> </table> </div> </body> </html> Но, по-моему, это танцы с бубном. Почему в моем IE7 'offsetHeight отличается на 21px от clientHeight? Я думала, здесь надо использовать как раз clientHeight, так как содержимое дива невелико, и оно занимает мало места. Почему, если отнимаю 30px, то остается полоса прокрутки. Надо отнимать больше. И как бы не пришлось для разных разрешений экранов отнимать разную цифру. Что посоветуете почитать? W3C?
Анне Ван Кестерен опубликовал описание ключевых отличий HTML 5 от HTML 4. Среди приятных мелочей: [The new element] article represents an independent piece of content of a document, such as a blog entry or newspaper article. The a and area elements have a new attribute called ping that specifies a space separated list of URIs which have to be pinged when the hyperlink is followed. A new autofocus attribute can be specified on the input (except when the type attribute is hidden), select, textarea and button elements. It provides a declarative way to focus a form control during page load. The new required attribute applies to input […] and textarea. It indicates that the user has to fill in a value in order to submit the form. You can now disable an entire fieldset by using the disabled attribute on it. The input element has a bunch of other new attributes to specify contraints: autocomplete, min, max, pattern and step. The style element has a new scoped attribute which can be used to enable scoped style sheets. Style rules within such a style element only apply to the local tree. The draggable attribute [on any element] can be used together with the new drag & drop API. The menu element is redefined to be useful for actual menus. HTML5 has none of the presentational attributes that were in HTML4 (including cellpadding and cellspacing). getElementsByClassName() to select elements by their class name. innerHTML as an easy way to parse and serialize an HTML or XML document. This attribute was previously only available on HTMLElement in web browsers and not part of any standard. activeElement and hasFocus to determine which element is currently focused and whether the Document has focus respectively. classList is a convenient accessor for className and the object it returns exposes methods, such as has(), add(), remove() and toggle(). Источник: Илья Бирман
для pingback, очевидно. Хотя я противник такого подхода, считаю, что ссылки должны быть контентно-независимыми... ))))
если б всё было та просто - я бы не спрашивал ;-) всё-таки не понятно что это, особенно в контексте сабжа...
dark-demon Что-то типа отслеживания кликов, типа ты в Яндексе в результатах поиска кликнул по сайту, и его позиция в рейтинге чуть-чуть подросла сейчас это делается жабаскриптом, а в будущем будет через такие пинги. Ох, сколько лишнего траффика полезет... раньше по крайней мере новички не могли на своих страницах на одну ссылку повесить несколько запросов, а что ж будет теперь, когда все ринутся все подряд накручивать...
В смысле, зачем это в HTML 5 вводить? Сам не понимаю. Ну, видимо, это «веб-два-ноль», взаимодействие ресурсов, mashup и иже с ними... типа круто, вот.
ужос... эту фичу сомнительной полезности я сразу же выключу, если её встроят в мозиллу. вообще, не понятно, каким местом в whatwg думают... ps: хотя нет, всё-равно не понятно, нафига вводить pingback, если есть referrer...
dark-demon Пример с Яндексом: при клике на результат поиска ты уходишь на этот сайт, но перед этим на Яндексе срабатывает "блоха", которая отправляет на Яндекс же донесение: такой-то посетитель кликнул по такому-то сайту. Эта информация нужна не сайту, на который ты уходишь, а Яндексу, который ты покидаешь. [несерьезно] Вобщем после прочтения этой статьи создается ощущение, что XHTML не один такой :lol: [/несерьезно]
1. сказки всё это 2. мечта сеошника 3. есть способы более простые и более надёжные бэкпинг - это на сколько я понял информирование сайта, что на него есть линк с другого сайта, причём продвигается как мегарулёзная технология не подверженная спаму. детский сад...
Посмотри HTML/JS странички с результатами многое станет ясно (гугль и яху тоже так работают, просто у них это не замаскировано) Нужно это для сбора статистики....
яндексовский прикол с картинкой не работает в мозилле. у гугла - яваскриптом подменяется урл - что мешает сразу выдавать страничку с нужным урлом? какой?