yalo
Новичок
несоответствие html из Smarty
Столкнулась с такой проблемой: html-код, сгенерируемый при помощи Smarty не совпадает с тем же обычным html-кодом.
Вот смартинский код:
{include file='header.tpl'}
<table border="1" bordercolor="#ff0000" cellspacing="0" cellpadding="0" width="100%" height="100%">
<tr height="44">
<td colspan="5">{include file="menu.tpl"}</td>
</tr>
<tr>
<td width="170"><img src="/themes/{$theme}/images/spot.gif" width="170"></td>
<td width="4"><img src="/themes/{$theme}/images/spot.gif" width="4"></td>
<td><img src="/themes/{$theme}/images/spot.gif"></td>
<td width="4"><img src="/themes/{$theme}/images/spot.gif" width="4"></td>
<td width="259"><img src="/themes/{$theme}/images/spot.gif" width="259"></td>
</tr>
<tr height="35">
<td colspan="5">{include file="footer.tpl"}</td>
</tr>
</table>
</body>
</html>
И вот код html, соответствующий ему.
<html>
<body leftmargin="0" rightmargin="0" topmargin="0" bgcolor="#ffffff">
<table border="1" bordercolor="#ff0000" cellspacing="0" cellpadding="0" width="100%" height="100%">
<tr height="44">
<td colspan="5" bgcolor="#ffff00">menu</td>
</tr>
<tr>
<td width="170"><img src="images/spot.gif" width="170"></td>
<td width="4"><img src="images/spot.gif" width="4"></td>
<td><img src="images/spot.gif"></td>
<td width="4"><img src="images/spot.gif" width="4"></td>
<td width="259"><img src="images/spot.gif" width="259"></td>
</tr>
<tr height="35">
<td colspan="5" bgcolor="#ffff00"><img src="images/spot.gif"></td>
</tr>
</table>
</body>
</html>
HTML делает все верно:
вторая строка таблицы разбивается на следующие столбцы:
1 ячейка: ширина=170
2 ячейка: ширина=4
3 ячейка: ширина=100%-170-259-4-4
4 ячейка: ширина=4
5 ячейка: ширина=259
С высотой строк тоже все как запланировано:
1 строка: высота=44
1 строка: высота=100%-44-35
3 строка: высота=35
Smarty делает совершенно непонятные вещи:
с высотой строк все ок, а вот с шириной ячеек второй строки полная ерунда - 1я ячейка около трети всей ширины, самая узкая 3я ячейка, чуть пошире ее 2я и 4я, причем они равны по ширине как и было запланировано, только кажется что чуть больше 4х пикселей, 5я ячейка соответственно очень большая - почти 2/3 от всей ширины
Столкнулась с такой проблемой: html-код, сгенерируемый при помощи Smarty не совпадает с тем же обычным html-кодом.
Вот смартинский код:
{include file='header.tpl'}
<table border="1" bordercolor="#ff0000" cellspacing="0" cellpadding="0" width="100%" height="100%">
<tr height="44">
<td colspan="5">{include file="menu.tpl"}</td>
</tr>
<tr>
<td width="170"><img src="/themes/{$theme}/images/spot.gif" width="170"></td>
<td width="4"><img src="/themes/{$theme}/images/spot.gif" width="4"></td>
<td><img src="/themes/{$theme}/images/spot.gif"></td>
<td width="4"><img src="/themes/{$theme}/images/spot.gif" width="4"></td>
<td width="259"><img src="/themes/{$theme}/images/spot.gif" width="259"></td>
</tr>
<tr height="35">
<td colspan="5">{include file="footer.tpl"}</td>
</tr>
</table>
</body>
</html>
И вот код html, соответствующий ему.
<html>
<body leftmargin="0" rightmargin="0" topmargin="0" bgcolor="#ffffff">
<table border="1" bordercolor="#ff0000" cellspacing="0" cellpadding="0" width="100%" height="100%">
<tr height="44">
<td colspan="5" bgcolor="#ffff00">menu</td>
</tr>
<tr>
<td width="170"><img src="images/spot.gif" width="170"></td>
<td width="4"><img src="images/spot.gif" width="4"></td>
<td><img src="images/spot.gif"></td>
<td width="4"><img src="images/spot.gif" width="4"></td>
<td width="259"><img src="images/spot.gif" width="259"></td>
</tr>
<tr height="35">
<td colspan="5" bgcolor="#ffff00"><img src="images/spot.gif"></td>
</tr>
</table>
</body>
</html>
HTML делает все верно:
вторая строка таблицы разбивается на следующие столбцы:
1 ячейка: ширина=170
2 ячейка: ширина=4
3 ячейка: ширина=100%-170-259-4-4
4 ячейка: ширина=4
5 ячейка: ширина=259
С высотой строк тоже все как запланировано:
1 строка: высота=44
1 строка: высота=100%-44-35
3 строка: высота=35
Smarty делает совершенно непонятные вещи:
с высотой строк все ок, а вот с шириной ячеек второй строки полная ерунда - 1я ячейка около трети всей ширины, самая узкая 3я ячейка, чуть пошире ее 2я и 4я, причем они равны по ширине как и было запланировано, только кажется что чуть больше 4х пикселей, 5я ячейка соответственно очень большая - почти 2/3 от всей ширины