【问题标题】:PHP Form CSS & PositioningPHP 表单 CSS 和定位
【发布时间】:2014-06-07 05:30:48
【问题描述】:

感谢您抽出宝贵时间阅读/回答此问题。

第一件事:my career page 有一个预先制作的联系表格,我把它变成了工作申请。我有两个布局问题:

1.) 我如何让“复选框”按钮排列得更近一些。我尝试了 td colspan="2",稍后在 2 个按钮的表单中就是这种情况(提交/重置 1 我删除了),但无济于事,“否”出现在“是”的右侧。我想让它相对接近“是”。

2.) 当您下拉“体验”下拉菜单时,它会强制在表单下方显示图像。一旦你选择了你的选项,图像就会回到原来的位置。我绝对必须绝对定位图形吗?或者我可以在下拉列表中添加溢出吗?我想不通。

FancyForm 是我正在使用的表单。

这是 HTML:

<form id="contact-form" name="contact-form" method="post" action="submit.php">
                              <table width="100%" border="0" cellspacing="0" cellpadding="5">
                                <tr>
                                  <td width="15%"><label for="name">Name</label></td>
                                  <td width="70%"><input type="text" class="validate[required,custom[onlyLetter]]" name="name" id="name" value="<?=$_SESSION['post']['name']?>" /></td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                                  <td width="15%"><label for="address">Address</label></td>
                                  <td width="70%"><input type="text" class="validate[required,custom[a-zA-Z\d\s\-\,\#\.\+]+]" name="address" id="address" value="<?=$_SESSION['post']['address']?>" /></td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                                  <td width="15%"><label for="telephone">Telephone</label></td>
                                  <td width="70%"><input type="text" class="validate[required,custom[onlyNumber]]" name="telephone" id="telephone" value="<?=$_SESSION['post']['telephone']?>" /></td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                                  <td width="15%"><label for="email">Email</label></td>
                                  <td width="70%"><input type="text" class="validate[required,custom[email]]" name="email" id="email" value="<?=$_SESSION['post']['email']?>" /></td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                                  <td width="15%"><label for="citizenship">US Citizen</label></td>
                                  <td width="35%"><input type="checkbox" name="citizen" value="yes">Yes</td>
                                  <td width="35%"><input type="checkbox" name="citizen" value="no">No</td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                                  <td width="15%"><label for="age">At Least 18</label></td>
                                  <td width="35%"><input type="checkbox" name="age" value="yes">Yes</td>
                                  <td width="35%"><input type="checkbox" name="age" value="no">No</td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                                  <td width="15%"><label for="previousexp">Have you worked<br> with us before?</label></td>
                                  <td width="35%"><input type="checkbox" name="previousexp" value="yes">Yes
                                  <td width="35%"><input type="checkbox" name="previousexp" value="no">No</td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                                  <td width="15%"><label for="subject">Experience</label></td>
                                  <td width="70%"><select name="subject" id="subject">
                                    <option value="" selected="selected"> - Choose -</option>
                                    <option value="0-5">0-5 Years</option>
                                    <option value="6-10">6-10 Years</option>
                                    <option value="11-15">11-15 Years</option>
                                    <option value="16-20">16-20 Years</option>
                                    </select></td>
                                  <td width="15%" id="errOffset">&nbsp;</td>
                                </tr>
                                <tr>
                              <td><label for="captcha"><?=$_SESSION['n1']?> + <?=$_SESSION['n2']?> =</label></td>
                              <td><input type="text" class="validate[required,custom[onlyNumber]]" name="captcha" id="captcha" /></td>
                              <td valign="top">&nbsp;</td>
                            </tr>
                            <tr>
                              <td valign="top">&nbsp;</td>
                              <td colspan="2"><input type="submit" name="button" id="button" value="Submit" />                              
                              <?=$str?>          <img id="loading" src="img/ajax-load.gif" width="16" height="16" alt="loading" /></td>
                            </tr>
                          </table>
                          </form>

CSS:

#form-container{
    padding:0px;
}

td{
    white-space:nowrap;
}

h1{
    color:#777777;
    font-size:22px;
    font-weight:normal;
    text-transform:uppercase;
    margin-bottom:5px;
}

h2{
    font-weight:normal;
    font-size:10px; 
    text-transform:uppercase;   
    color:#aaaaaa;
    margin-bottom:15px;
    border-bottom:1px solid #484848;
    margin-bottom:15px;
}

label{
    text-transform:uppercase;
    font-size:10px;
    font-family:Tahoma,Arial,Sans-serif;
}

textarea{
    color:#404040;
    font-family:Arial,Helvetica,sans-serif;
    font-size:12px;
}

td > button{
    text-indent:8px;
}

非常感谢您的帮助

【问题讨论】:

    标签: php html css ajax forms


    【解决方案1】:

    为您的图像问题从 id #wrapper 中删除 overflow:auto

    【讨论】:

      【解决方案2】:

      对于您的第一个问题,您只需将两个复选框放在同一个 &lt;td&gt;&lt;/td&gt; 中即可将它们并排放置。将代码更改为:

      <td width="35%"><input type="checkbox" name="citizen" value="yes">Yes<input type="checkbox" name="citizen" value="no">No</td>
      

      至于图像,您似乎没有包含与之相关的代码。如果您可以在此表单周围的上下文中提供代码,以便我可以看到图像是如何放置的,这将有助于发现它移动的原因。

      【讨论】:

      • 通过这样做,它将它们对角地堆叠在它们的正下方,如下所示:i.imgur.com/ZgU7Gs8.png?1?4953
      • 为了解决这个问题,为 添加一个 CSS 类,并带有复选框,使其向左浮动。比如:#checkboxes td{ float:left; }
      • 感谢您的帮助,但我无法在课堂上使用它。
      猜你喜欢
      相关资源
      最近更新 更多
      热门标签