Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: css vs align/valign

Сообщения:  [1-10] 

 
 автор: unreal666   (01.08.2006 в 01:38)   письмо автору
 
   для: Хулиган   (01.08.2006 в 01:23)
 

>А вот валидатор не признал мой DOCTYPE:
>This page is not Valid XHTML 1.0 Strict!

А вместо <html> пробовал поставить <html xmlns="http://www.w3.org/1999/xhtml"> ?
И вообще-то эта фраза скорее всего означает, что у тебя именно страница не валидна, а не DOCTYPE. Ведь определил же валидатор, чему она должна быть валидна (XHTML 1.0 Strict).
И нафига ты поставил Strict. Он же накладывает более есткие ограничения на соответствие стандарту XHTML, чем Transitional.
Лучше сделай так тогда:
<!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">

И вообще страница у тебя соответствует стандарту HTML или XHTML ?

   
 
 автор: Хулиган   (01.08.2006 в 01:23)   письмо автору
 
   для: unreal666   (31.07.2006 в 06:01)
 

Да, действительно, после того, как вставил
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
отступы снизу выравнялись.
А вот валидатор не признал мой DOCTYPE:
This page is not Valid XHTML 1.0 Strict!

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

   
 
 автор: unreal666   (31.07.2006 в 06:01)   письмо автору
 
   для: Хулиган   (30.07.2006 в 16:09)
 

Чтобы этих отсупов не было, нужно чтобы "боксовая" модель страницы соответствовала W3C рекомендациям. Т.е. нужно, чтобы в начале страницы было или

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

или

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

ну или другой тип DTD.

P.S.
Тип "боксовой" модели можно определить свойством document.compatMode . Если тип соответствует рекомендациям W3C, то это свойство будет CSS1Compat. Если не соответствует, то QuirksMode в Opera и BackCompat в IE и Mozilla.
Кстати, в режиме CSS1Compat канвой документа является тег HTML, а в BackCompat (QuirksMode) тег BODY.

   
 
 автор: Хулиган   (30.07.2006 в 16:09)   письмо автору
 
   для: AlexSol   (30.07.2006 в 10:58)
 

Да, так получше. Правда, в разных браузерах по разному: если в ИЕ выравнять форму по низу ячейки, то в мозиле и опере они чуть недотягивают до низа (3px). Но это уже приемлимо, не 26px.
Спасибо.

   
 
 автор: AlexSol   (30.07.2006 в 10:58)   письмо автору
 
   для: Хулиган   (30.07.2006 в 09:43)
 

если есть все размеры, то что вам мешает их выставить?

<table cellpadding="0" cellspacing="0" border="1" style="border:1px solid red;">
<tr height="89"><td style="vertical-align:top">
<img src='img.gif' width="88" height="28" style=" position:relative; top:-2px; left:-2px; border:1px solid red; padding:0; margin:0">
<form name='find' action="search.php" method="post" class='search' style=" border:1px solid red; padding:0; margin:0; position:relative; top:30px; left:-2px"> ПОИСК: 
<input type='text' class='input_search' name='find_text'> 
<input type='submit' class="subm_search" value='НАЙТИ' onfocus="this.blur()"> 
</form>           
</td> 
</tr>
</table>

---------------------
свойство vertical-align задает выравнивание внутри ячейки

   
 
 автор: Хулиган   (30.07.2006 в 09:43)   письмо автору
 
   для: Padonak   (30.07.2006 в 02:10)
 

Вот тут в аттаче рисунок того, что получается со стилями - форма в середине ячейки, а не внизу.

   
 
 автор: Хулиган   (30.07.2006 в 09:31)   письмо автору
 
   для: Padonak   (30.07.2006 в 02:10)
 

Да нет, это совсем другая страница.

Во-первых, картинка должна быть img а не background. Это добавляет еще по 2px к ней со всех сторон.
Во-вторых, высота всей этой конструкции должна быть 89px, а не на весь экран.
В-третьих, снизу отступ так и остался между формой и границей ячейки, в которой она расположена.
И этот отступ на фоне высоты ячейки 89px просто огромный: 26px. Если приплюсовать сюда высоту формы 22px, то получается, что форма располагается в середине ячейки, а не в низу.

Так что похоже стилями это не решается.

   
 
 автор: Padonak   (30.07.2006 в 02:10)   письмо автору
 
   для: Иннокентий   (30.07.2006 в 02:06)
 

вот твоя страница:

link

   
 
 автор: Иннокентий   (30.07.2006 в 02:06)   письмо автору
 
   для: Хулиган   (29.07.2006 в 23:44)
 

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

   
 
 автор: Хулиган   (29.07.2006 в 23:44)   письмо автору
 
 

Решил сделать такую вещь: в ячейку таблицы вставить рисунок и форму под ним.
Так, чтобы и рисунок, и форма были вплотную к правой границе ячейки, при этом рисунок также вплотную в верхней границе, а форма - к нижней. Т.е. элементы в правом верхнем и правом нижнем углах ячейки. Безрезультатно провозился два часа с css: никакими маргинами и паддингами не удалось сдвинуть элементы из центра. Плюнул на css, сделал внутри ячейки таблицу с двумя строками, и при помощи align и valign поставил элементы куда нужно:

      <td>
        <table width=100% border=0 align=right style='height:89px;'>
          <tr>
            <td align='right' valign='top'>
              <img src='/img/amlogo1.gif'>
            </td>
          </tr>
          <tr>
            <td align='right' valign='bottom'>
              <form name='find' action="search.php" method="post" class='search'>
                ПОИСК: <input type='text' class='input_search' name='find_text'>
                <input type='submit' class="subm_search" value='НАЙТИ' onfocus="this.blur()">
              </form>
            </td>
          </tr>
        </table>
      </td>


Теперь такой вопрос: возможно это сделать без вложеной таблицы, одними css, или нет? Если возможно, то как?

   

Сообщения:  [1-10] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования