ПРИМЕЧАНИЕ. Вот скрипка, и поскольку это выглядит ужасно, вот полный результат экрана
Вот скрипка после того, как я сделаю свои изменения на своем компьютере и сгенерирую html, и вот полный экран
Примечание по скрипке: я добавил весь код в скрипку, так как он не будет работать, если только не весь код.
Спасибо всем, кто даст подсказки! Моя единственная проблема здесь в том, что в названии, ничего больше. :)
=====
Я работаю над студенческим проектом для создания интерфейса, который обращается к базе данных (хотя я не студент CS). Мой код ведет себя очень странно. У меня есть код для одного окна, который отображает один большой div, разделяющий три divs side byside, который структурирован таким образом:
<div id="container">
<div id="window1">
<form></form> //my buttons
</div>
<div id="window2">
<form></form> //my body
</div>
<div id="window3">
//I havent written anything here yet
</div>
</div>
Но я понял, что для меня более разумно заключить их в одну форму. Как это:
<div id="container">
<form>
<div id="tab1">
</div>
<div id="tab2">
</div>
<div id="tab3">
</div>
</form>
</div>
Итак, в первом случае это выглядит так:
Но после того, как я его изменил:
Что странно, если я ставил формы в свои формы, он снова начинает работать! Итак, это работает:
<div id="container">
<form>
<div id="tab1">
<form></form>
</div>
<div id="tab2">
<form></form>
</div>
<div id="tab3">
</div>
</form>
</div>
Если вам нужно увидеть мой код, я на самом деле использую PHP для генерации html, так как он много, поэтому (это метод, который не работает):
<div id="search_separator" class="upper_tab">
<form action="" method="post">
<div id="button_container">
<?php
$tbs_a = 1;
$tbs_name = 'table_selector';
$printRetain_button = '';
$fg = input::get($tbs_name);
echo '<label for="',$tbs_name,'"></label>';
foreach($table_arrays AS $ta => $table){
$tbs_val = "table".$tbs_a;
if($tbs_a==1){
echo '<div class="button"><input type="radio" class="tabl_selector" name="',$tbs_name,'" value="',$tbs_val,'" checked="default"/><div class="table_selector">',$ta,'</div></div>';
}else{
echo '<div class="button"><input type="radio" class="tabl_selector" name="',$tbs_name,'" value="',$tbs_val,'"';
if($tbs_val == $fg){
echo ' checked="checked"';
}//make a separate echo for table1 radio button with the default turned on.
echo '/><div class="table_selector">',$ta,'</div></div>';
}
$tbs_a++;
}
?>
<!--<input type="submit" name="submit" value="submit" />-->
</div>
<div id="search_container" class="content">
<?php
$a = 1;
$search = DB::getInstance();
foreach($table_arrays AS $t_a => $table){
$y = 1;
echo '<div id="table',$a,'_content" class="table_content">';
echo "<h2>",$t_a,'</h2><table align="center" id="actualhtmltable">';
foreach($table AS $t => $field){
$name = "table".$a."_field".$y;
$val_sticky = escape(input::get($name));
$val_find = $search->get($t_a, array($t, '=', input::get($name)));
//$val_find = $search->get('user_credentials', array('user_id', '=', 28))->results();
if(!empty($val_find)){
$val = array();
foreach($val_find[0] AS $vfz){
$val[] = $vfz;
}
} elseif(!empty($val_sticky)){
$valu = $val_sticky;
} else {
$valu = "";
}
echo '<tr><div><td>',$t,'</td><td><label for="',$name,'"><input type="text" class="entryfields" name="',$name,'" value="';
if(!empty($val[$y-1])){
echo $val[$y-1];
} else {
echo $valu;
}
echo '" /></label></td></div></tr>';
$y++;
}
echo '</table></div>';
$a++;
}
?>
<div class="Tableformbutton">
<div class="FindModeButtons">
<input type="Submit" name="find" value="Find" id="find" class="findupdateinsert" />
<input type="Submit" name="update" value="Update" id="update" class="findupdateinsert" />
</div>
<input type="Submit" name="insert" value="Insert" id="insert" class="findupdateinsert" />
</div>
</div>
<div id="other_container">
<!--find mode on and other functionalities-->
</div>
<div class="hassubmit" id="searchsubmit_container">
<input type="button" id="findmodetoggler" name="query_submit" value="Toggle Find Mode" class="top_buttons" />
<a href="#" class="tip"><input="button" name="Help" value="Help" class="top_buttons" id="help" />
<span> Click "Toggle Find Mode" to toggle between find/update and insert buttons.<br />
If find mode is on, you will be able to look for existing records and update them. Otherwise, you can only insert new entries.<br />
Find mode is off by default.</span>
<p>Need Help?</p>
</a>
</div>
</form>
</div>
Насколько я могу судить, он должен работать! Я ничего не вижу в своем HTML, и что касается моего CSS, я ничего не писал о формах там, только divs и label и теги ввода. Что может быть неправильным?
Спасибо всем, кто даст подсказки или идеи!
Я нашел решение, которое действительно так просто. Но я не знаю, почему так получилось.
Я добавил id="search_form"
в форму, в которой я нуждаюсь, а затем использовал CSS, чтобы сказать .search_form{ height: 100% }
как видно, когда форма была сделана, она сделала высоту всего лишь несколькими пикселями. Это странно, но, по крайней мере, я нашел ответ.