Сегмент HTML с отделением, содержащим форму, содержащую таблицу:
Выключатель должен скрыть форму и ее вложенную таблицу, но не делает так под IE8. (версия 8.0.60001) содержание формы скрыто, но граница таблицы продолжает показывать, и сохраняет ее размер. Это связано с режимом стандартов; это исчезает в режиме причуд.
У кого-либо есть обходное решение для этого?
Эта страница в качестве примера уменьшается о том, насколько я могу уменьшить ее. Если я удаляю выбор или любое из отделений, проблема исчезает. Выбор должен присутствовать, и таблица должна быть вложена в форме, поскольку это будет содержать элементы формы.
Сама страница в: http://dev.rdbhost.com/rdbadmin/mainProbDemo.html
Я отправил эту проблему ранее с чрезмерно упрощенным примером, который не был восстанавливаем. Спасибо, если Вы посмотрели на него затем.
http://api.jquery.com/detach/ может сработать для вас, если просто скрытие не работает - он удалит элемент из dom, но сохранит его, чтобы вы могли повторно вставить его, если вы хотите (используя http://api.jquery.com/append/ или http://api.jquery.com/appendTo/ ). Вы также можете попробовать установить атрибут css видимости $ (". Content-panel"). Css ("visibility", "hidden");
в качестве дополнительной меры (обратите внимание, что это будет означать, что элемент все еще занимает место, см. также http://www.w3schools.com/css/pr_class_visibility.asp ) (отредактируйте: вернуться с помощью $ (". content-panel"). css ("visibility) "," видимый ");
).
И последнее, но не менее важное: вы никогда не узнаете - может быть, просто используя show (0);
и hide (0);
работает, и переключение каким-то образом заблокировано - маловероятно, опять же я думаю, Мерфи применимо в этом случае.
Почему в вашем обработчике onclick есть объявление схемы javascript:
<button onclick="$('.content-panel').toggle();">Toggle</button>
Можно ли обернуть все элементы формы дополнительной таблицей? Примерно так:
<!DOCTYPE html>
<html> <!-- xmlns="http://www.w3.org/1999/xhtml" lang="en" -->
<head>
<style type="text/css">
#content{position:relative}
.inner {border-color:#999;border-style:solid}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
</head>
<body>
<button type="button" onclick="javascript:$('.content-panel').toggle();">Toggle</button>
<div id="content">
<div class="content-panel">
<form action='' method='post'>
<table>
<tr>
<td>
<select>
<option>a </option>
</select>
</td>
</tr>
<tr>
<td>
<table class="inner">
<tr><td>ABCDEF</td></tr>
</table>
</td>
</tr>
</table>
</form>
</div>
</div>
</body>
</html>
Или просто добавляете все элементы формы в таблицу, которая у вас есть:
<form action='' method='post'>
<table>
<tr>
<td>
<select>
<option>a </option>
</select>
</td>
</tr>
<tr>
<td>
ABCDEF
</td>
</tr>
</table>
</form>