programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 09/05/08 в 00:27 |
1.
Код: | <input type="File" style="width: 312px" name="new_image[1]"> |
для такого типа поля width: 312px не работает. для type="text" работает
2
Код: | <tr id="compl_select" style="display:none"><td colspan="2" id="compl_select_change" style="padding:0px"> |
с помощью JS в id="compl_select_change" помещаем табличку. табличка игнорирует colspan="2" и отображается не в соединенных ячейках, а как бы в первой <td>
3
ну и чудеса, когда жамкаешь скрыть/показать в display:hidden какое нибудь содержимое - браузер начинает раздвигаться по высоте, образуя пустое пространство
?
|
|
|
|
+
С нами с 30.04.08
Сообщения: 35
Рейтинг: 11
|
Добавлено: 09/05/08 в 06:37 |
Я попробовал так же как ты, у меня тоже такой прикол. А вот как его избежать ещё не придумал...
|
|
|
|
« ... full on ... »
С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686
|
Добавлено: 09/05/08 в 08:41 |
1. Можно использовать size (напр.: size="70") или чтото вроде вот этого.
2. Если целую табличку внутрь TD, то правильно она всё игнорирует, colspan же в другой таблице задан.
3. display может иметь значение none и block, а свойство visibility - hidden и visible. Вероятно, поэтому глюк, из-за путаницы.
|
|
Power of the lime madness...
|
8
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 09/05/08 в 09:31 |
1. если использовать size - размер в ИЕ и ФФ разный.
2. альтернатива?
3. пардон - display:none и имел ввиду
|
|
|
|
« ... full on ... »
С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686
|
Добавлено: 09/05/08 в 10:06 |
1. Конечно хак, но можно подогнать width в пикселях под определённый size и сделать так, чтобы оно отображалось одинаково и в IE и в FF. Т.е. для поля указать и width и size, width будет приоритетным в IE, size в FF.
2. Что-то я, похоже, сразу неверно понял этот вопрос. Вот такая штука?
Код: | <script language="JavaScript">
<!--
function insert_table()
{
tbl = '<table border="1" width="400px"><tr><td>inner table</td></tr></table>';
document.getElementById("compl_select_change").innerHTML = tbl;
}
//-->
</script>
<table border="1" width="500px">
<tr>
<td colspan="2" id="compl_select_change" style="padding:0px"> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
<button onClick="insert_table()">Insert</button> |
В IE и FF всё инсёртица как надо.
3. Тогда не совсем понятно в чём проблема, без кода не разобрать. Но, к примеру, вот такой код работает как должен в обоих браузерах:
Код: | <script language="JavaScript">
<!--
function hide_show_div()
{
if(document.getElementById("my_div").style.display=='none')
{
document.getElementById("my_div").style.display='block';
}
else
{
document.getElementById("my_div").style.display='none';
}
}
//-->
</script>
<div id="my_div" style="background-color:red;width:400px;height:200px;"></div>
<div style="background-color:blue;width:400px;height:100px;"></div>
<button onClick="hide_show_div()">Hide/Show</button> |
|
|
Power of the lime madness...
|
8
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 09/05/08 в 12:26 |
2
Код: | <script language="JavaScript">
<!--
function insert_table()
{
tbl = '<table border="1" width="480px"><tr><td>inner table</td></tr></table>';
document.getElementById("compl_select_change").innerHTML = tbl;
var disp_tab = document.getElementById("compl_select");
disp_tab.style.display='block';
}
//-->
</script>
<table border="1" width="500px">
<tr id="compl_select" style="display:none">
<td colspan="2" id="compl_select_change" style="padding:0px"> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
<button onClick="insert_table()">Insert</button> |
попробуй так в FF - видно что вторая ячейка не при делах
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 09/05/08 в 12:31 |
3
в принципе аналогично - пробуй в FF
Код: | <script language="JavaScript">
<!--
function hide_show_div()
{
if(document.getElementById("my_div").style.display=='none')
{
document.getElementById("my_div").style.display='block';
}
else
{
document.getElementById("my_div").style.display='none';
}
}
//-->
</script>
<table border="1">
<tr><td><button onClick="hide_show_div()">Hide/Show</button></td></tr>
<tr><td id="my_div" style="display:none">
nbvnikbvntrebret
gfrevuhuiv
uivern
vjkernk<br><br>
</td></tr>
</table>
bottom
|
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 09/05/08 в 12:35 |
3
а вот собственно кусок рабочего кода
если понажимать на ссылку в ФФ, то видно как кнопки уезжают вниз постепенно
Код: | <script language="JavaScript">
<!--
function hide_show_div()
{
if(document.getElementById("my_div").style.display=='none')
{
document.getElementById("my_div").style.display='block';
}
else
{
document.getElementById("my_div").style.display='none';
}
}
//-->
</script>
<table>
</td></tr><tr><td style="height: 26px">Êîìïëåêòàöèÿ:</td><td><b><a href="javascript:void(0);" onclick="hide_show_div('my_div');" title="ñêðûòü-ïîêàçàòü">Îáùàÿ</a></b></td></tr>
<tr id="my_div" style="display:none"><td colspan="2" id="compl_select_change" style="padding:0px">
<table cellspacing="2"><tr bgcolor="White"><td width="520">Òåñò</td><td style="height: 26px" width="6" align="left"><input type="Checkbox" name="arr_compl_fieds[a1]" value="Òåñò" style="background-color:#ffffff;" checked></td></tr><input type="hidden" name="k" value="1"><input type="hidden" name="k_plus" value="1"><tr id="hidden_add" style="display:none"><td colspan="2" id="hidden_add_td"></td></tr></table>
</td></tr>
<tr><td colspan="2" align="center"><br><input type="button" name="plus" value="+ ïîëå" style="width: 120px" onclick="plus_pole();"> <input type="submit" name="submitted" value="Èçìåíèòü" style="width: 120px"><br></td></tr>
</td></tr>
</table> |
|
|
|
|
« ... full on ... »
С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686
|
Добавлено: 09/05/08 в 12:41 |
В FF display надо указывать как 'table-row' для TR или 'table-cell' для TD, из-за 'block' и глючит.
|
|
Power of the lime madness...
|
8
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 09/05/08 в 12:44 |
а пример можно?
|
|
|
|
« ... full on ... »
С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686
|
Добавлено: 09/05/08 в 13:21 |
На примере вставки таблицы (#2):
Код: | <script language="JavaScript">
<!--
function insert_table()
{
tbl = '<table border="1" width="480px"><tr><td>inner table</td></tr></table>';
document.getElementById("compl_select_change").innerHTML = tbl;
var disp_tab = document.getElementById("compl_select");
disp_tab.style.display='table-row';
}
//-->
</script>
<table border="1" width="500px">
<tr id="compl_select" style="display:none">
<td colspan="2" id="compl_select_change" style="padding:0px"> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
<button onClick="insert_table()">Insert</button> |
В IE table-row/table-cell не работают, нужно будет подключать определение браузера и для FF указывать table-row/table-cell, а для IE block.
Идеально идентично display (none/block) работает с дивами, поэтому можно в пустые ячейки дивы вставить или вообще от таблиц избавиться. Либо, если таблицы никуда не деть, то можно сделать через DOM (document.createElement, appendChild, removeChild).
|
|
Power of the lime madness...
|
8
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 09/05/08 в 13:48 |
спасиб
|
|
|
|