我是 HTML 新手。这可能是非常基本的,但无论我做什么,我都无法让我的表单工作。每当我单击输入字段(文本区域)时,只要我按住鼠标,输入字段就会保持选中状态,但每当我释放它时,焦点就会回到表单的第一个字段。这是 HTML/CSS 吗?我不知道如何解决它。
这是我正在处理的表单的 URL ( http://www.seanmccully.com/apps/langham/tea.html ) — 但它现在可能已修复。可以看到不能选择名字、姓氏、城市、邮箱(只能通过tab输入数据)。
我是 HTML 新手。这可能是非常基本的,但无论我做什么,我都无法让我的表单工作。每当我单击输入字段(文本区域)时,只要我按住鼠标,输入字段就会保持选中状态,但每当我释放它时,焦点就会回到表单的第一个字段。这是 HTML/CSS 吗?我不知道如何解决它。
这是我正在处理的表单的 URL ( http://www.seanmccully.com/apps/langham/tea.html ) — 但它现在可能已修复。可以看到不能选择名字、姓氏、城市、邮箱(只能通过tab输入数据)。
这是因为您已将所有表单元素包装在一个label
元素中。摆脱它,它会正常工作。
一个label
元素只能与单个表单控件相关联,单击 alabel
会将焦点放在其关联的控件上。由于您的 中有多个控件label
,因此它与第一个控件相关联,并且随着单击事件在 DOM 中传播,单击任何其他表单控件将到达标签并使其将焦点放在其关联控件(第一个)上。
如果要使用label
元素,则每个控件都需要一个。您可以将span
元素更改为label
元素,并使用该for
属性将该标签与控件相关联,或者您可以将每个控件包装在标签中:
<label class="labelstyle" for="fname">First Name</label>
<input name="fname" type="text" class="fieldstyle" id="fname" size="25" maxlength="50"/>
<!-- or -->
<label class="labelstyle">
First Name <input name="fname" type="text" class="fieldstyle" id="fname" size="25" maxlength="50"/>
</label>
看来我找到了哪里出错了:
你知道,你不应该把这个家伙到处放。你让他总是集中注意力,而不是输入名为文本的家伙。所以尝试删除标签;你会检查出来的。