|
|
|
| привет всем, темы не новая, но исчерпывающего ответа пока нигде не нашел.
приатачен файлик с описанием структуры таблицы которую пытаюсь реализовать. проблема в том что при жестком задании размеров ячеек, они нарушаются браузером, мне нужно что бы растягивались вниз нижние и средняя ячейки, а в результате растягиваются верхние и средняя, т.е. не совсем то что требуется.
Просветите пожалуйста, как решить проблему. | |
|
|
|
|
|
|
|
для: Byte
(29.11.2005 в 21:14)
| | Так в чем проблема? Допустимо указывать один размер (width) и не указывать другой (height) в плавающих ячейках. | |
|
|
|
|
|
|
|
для: Void
(29.11.2005 в 21:28)
| | да, допустимо, но почему-то плывет та ячейка где были указаны оба размера, а там где был только один не понятно строится (размер не понимаю откуда ее береться броузером), в этом и проблема. | |
|
|
|
|
|
|
|
для: Byte
(30.11.2005 в 00:14)
| | Насчет того, откуда браузер берет значения - из самой же таблицы. Она же не может быть размером меньше чем один символ по вертикали.
Можете ли Вы привести весь код таблицы стилей и страницы?
Также хочется узнать, каким образом Вы создаете страницу. | |
|
|
|
|
|
|
|
для: Void
(30.11.2005 в 01:50)
| | у меня нет уверенности что захочется в этом кому то копаться, но вот кусок моей страницы
<?php
function inf_tbl($sect_id,$xsize)
{
echo "<table width=\"".$xsize."\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" align=\"left\" valign=\"top\">";
// zagolovok i menu place
//-----------------------------------------------------------------------------------------------------------------------
echo "<tr>";
echo " <td width=\"24\" height=\"118\" rowspan=\"2\"
высоту первой ячейки задаю фиксированной
background=\"images/base_pictures/table_f_text/top_left.jpg\"></td>";
echo " <td width=\"".($xsize-24-40)."\" height=\"32\" colspan=\"1\" background=\"images/base_pictures/table_f_text/top.jpg\"></td>";
echo " <td width=\"40\" height=\"118\" rowspan=\"2\"
тут тоже
background=\"images/base_pictures/table_f_text/top_right.jpg\"></td>";
echo " </tr>";
echo "<tr>";
// menu place
echo " <td width=\"".($xsize-24-40)."\" height=\"".(118-32)."\" colspan=\"1\" background=\"images/base_pictures/table_f_text/middle.jpg\">";
//---------------------------------------------------------------------------------------------------------------------------
//menu
$mi=4; //numbers of menu items
$mcx=($xsize-24-40-30)/$mi; // menu cell width
$mcy=67; // menu cell height
$mix=82; // menu image width
$miy=67; // menu image height
echo "<table width=\"".($mcx*$mi)."\" height=\"".$mcy."\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
echo " <tr align=\"center\" valign=\"middle\">";
echo " <td width=\"".$mcx."\" height=\"".$mcy."\"><a href=\"#\" onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage('Image1','','images/menu/news1.jpg',1)\"><img src=\"images/menu/home.jpg\" name=\"Image1\" width=\"".$mix."\" height=\"".$miy."\" border=\"0\"></a></td>";
echo " <td width=\"".$mcx."\" height=\"".$mcy."\"><a href=\"#\" onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage('Image2','','images/menu/news1.jpg',1)\"><img src=\"images/menu/news.jpg\" name=\"Image2\" width=\"".$mix."\" height=\"".$miy."\" border=\"0\"></a></td>";
echo " <td width=\"".$mcx."\" height=\"".$mcy."\"><a href=\"#\" onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage('Image3','','images/menu/services1.jpg',1)\"><img src=\"images/menu/services.jpg\" name=\"Image3\" width=\"".$mix."\" height=\"".$miy."\" border=\"0\"></a></td>";
echo " <td width=\"".$mcx."\" height=\"".$mcy."\"><a href=\"#\" onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage('Image4','','images/menu/contacts1.jpg',1)\"><img src=\"images/menu/contacts.jpg\" name=\"Image4\" width=\"".$mix."\" height=\"".$miy."\" border=\"0\"></a></td>";
echo " </tr>";
echo "</table>";
echo "</td>";
//-------------------------------------------------------------------------------------------------------------------------------
echo "</tr>";
//-----------------------------------------------------------------------------------------------------------------------
// seredina, fixed size
echo "<tr>";
echo " <td height=\"148\" width=\"24\" rowspan=\"1\"
вот эта ячейка плавет, мне же нужен фиксированный ее размер
background=\"images/base_pictures/table_f_text/middle_left.jpg\"></td>";
echo " <td width=\"".($xsize-24-40)."\" height=\"500\" rowspan=\"2\" align=\"center\" valign=\"middle\"
тут идет плавающая высота, в эту ячейку будет вставляться текст из БД, также для удобства вставляю внутреннюю таблицу
background=\"images/base_pictures/table_f_text/middle.jpg\">";
// info place
echo "<table width=\"".($mcx*$mi)."\" height=\"".$mcy."\" border=\"1\" cellpadding=\"0\" cellspacing=\"0\">";
echo " <tr align=\"center\" valign=\"middle\">";
echo "<td>";
echo "hi<br>";
echo "</td></tr>";
echo "</table>";
echo "</td>";
echo " <td width=\"40\" height=\"148\"><img src=\"images/base_pictures/table_f_text/_middle_right_top.jpg\" width=\"40\" height=\"148\"></td>";
echo "</tr>";
//--------------------------------------------------------------------------------------------------------------------------------------
echo "<tr>";
echo " <td width=\"24\" background=\"images/base_pictures/table_f_text/middle_left.jpg\"></td>";
//echo " <td width=\"60\">7</td>";
echo " <td width=\"40\" background=\"images/base_pictures/table_f_text/middle_right_bottom.jpg\"></td>";
echo "</tr>";
//--------------------------------------------------------------------------------------------------------------------------------------
echo "<tr>";
echo "<td width=\"24\" height=\"104\" rowspan=\"2\" background=\"images/base_pictures/table_f_text/bottom_left.jpg\"></td>";
echo "<td height=\"84\" colspan=\"1\" background=\"images/base_pictures/table_f_text/middle.jpg\"></td>";
echo "<td width=\"40\" height=\"104\" rowspan=\"2\" background=\"images/base_pictures/table_f_text/bottom_right.jpg\"></td>";
echo "</tr>";
echo "<tr>";
echo "<td height=\"20\" colspan=\"1\" background=\"images/base_pictures/table_f_text/bottom.jpg\"> </td>";
echo "</tr>";
echo "</table>";
}
?>
|
понимаю что приведенный текст друночитаем, но другого нет | |
|
|
|
|
|
|
|
для: Byte
(30.11.2005 в 03:24)
| | А кто же так делает? Посмотри внимательно у тебя в одной строке высота сталая = 32 и 118
...
echo "<tr>";
echo " <td width=\"24\" height=\"118\" rowspan=\"2\"
высоту первой ячейки задаю фиксированной
background=\"images/base_pictures/table_f_text/top_left.jpg\"></td>";
echo " <td width=\"".($xsize-24-40)."\" height=\"32\" colspan=\"1\" background=\"images/base_pictures/table_f_text/top.jpg\"></td>";
echo " <td width=\"40\" height=\"118\" rowspan=\"2\"
тут тоже
background=\"images/base_pictures/table_f_text/top_right.jpg\"></td>";
echo " </tr>";
...
|
если хочешь сделать сталую величину ячейки лучше сделай примерно так (привожу в html-е, на РНР сам сделаешь):
<tr valign="top">
<td width="n" <!--задаешь свои параметры->>
<table>
<tr>
<td <!--а здесь задавай ее высоту-->></td>
</tr>
</table>
</td>
</tr>
</table>
|
| |
|
|
|
|
|
|
|
для: Lelik
(30.11.2005 в 11:02)
| | Да, вставлять внутренние таблицы видимо придется, а по поводу разных высот, так там все верно, Вы видимо не увидели что же там все таки делается. А делается следующее, 118 - это высота левой и правой яейки (всего 3 столбца), 32 - это высота первой ячеки среднего столбца, потом ниже рисуется еще одна ячейка, высотой 86, т.е. все работает. но это только верхняя часть таблицы, а вот после, в средней и появляются проблемы, т.к. там жестких параметров высоты нету, должно все автоматом растягиваться. | |
|
|
|