通常还需要字段标签。占位符在输入后消失,字段名称应让人一直看得见,也要与输入框实际关联。CF7可以用label包住一个控件,或让label的for对应表单标签的id;复选框组用各自标签,别用一个label包住整组。
“请输入公司”“请输入邮箱”写在框里,看起来很省地方。客户一旦填了几项,只看到一排内容,就需要记住每个框原来是什么意思。页面里有多个相似字段时,这种记忆负担更明显。
字段标签帮助人持续辨认自己正在填什么,也帮助浏览器和辅助技术确定控件的名称。它不是单纯的排版装饰。
占位符一消失,客户就少了一个线索
字段名称回答“这是什么”,格式提示回答“怎么填”。比如“工作邮箱”是名称,[email protected]可以作为格式例子;把这两件事都塞进占位符,输入以后就都没了。
CF7的占位符说明解释了它在开始输入后消失的行为。W3C的字段标签教程则说明label和控件关联的作用,包括点击标签时激活对应控件。
下面两种表单输入前可能都能看懂。填入内容以后,有持续可见标签的版本仍能辨认姓名、邮箱和需求。把标签放在字段上方,也更容易在手机上保持清楚的对应关系。

字段名称、格式例子、填写说明,分别放哪里
“工作邮箱”让客户知道这一框填什么;[email protected]展示格式;“用于发送报价和确认参数”说明用途。三句话承担不同任务,不必都挤进框里。
名称适合放在输入框外,格式例子可以作为placeholder,较长说明放在邻近的可见文字。填写以后,名称和重要说明仍在,客户检查时不用靠记忆倒推这一格原来叫什么。若让辅助技术读取说明,还需由维护者核相应控件关联;仅把文字摆在旁边不自动建立这种关系。
标签颜色、位置和字号可以按原网站调整。重点是内容填进去以后仍能辨认,点击标签对应正确输入框,以及错误信息指出哪个字段需要修正;不能只凭外观看起来更清爽判断表单已经可用。
用CF7改三个字段,邮件字段名保持原样
先记录现有表单模板和邮件模板。你要调整的是标签,不应顺手更名所有字段。CF7的字段name通常还会被邮件模板引用,改错名字会把另一项问题带进来。
下面是教学示例,使用姓名、邮箱和需求三个字段。请按现有表单的真实字段名调整,别直接覆盖整个正在使用的表单。
<label for="quote-name-main">姓名(必填)</label>
[text* your-name id:quote-name-main]
<label for="quote-email-main">工作邮箱(必填)</label>
[email* your-email id:quote-email-main placeholder "[email protected]"]
<label for="quote-message-main">需求说明</label>
[textarea your-message id:quote-message-main]
your-email是CF7的字段名,邮件里可能使用[your-email]。quote-email-main是这个输入框的HTML id,外面的label用for指向它。两者名字可以不同,各自负责一件事。
CF7官方的标签关联说明支持把label与表单标签分开,再通过for和id连接。也可以把单个控件放进一个label内。
“必填”应让客户看得见。输入要求较多时,旁边写清格式或用途,不要只在提交错误后才告诉他缺少什么。例如需求说明可以提示型号、数量及使用条件,但别为凑字段要求客户提交不必要的个人信息。
保存后查看前台输出,确认for实际对应输入框id,而不只是编辑器里这两段文字看起来一样。
再去CF7的邮件模板核这些引用,以下仍是教学片段:
姓名:[your-name]
工作邮箱:[your-email]
需求说明:[your-message]
你只把HTML id改成quote-email-main时,邮件里仍引用字段name对应的[your-email]。如果把name也改成contact-email,就要同步检查邮件引用;否则界面里填了邮箱,邮件模板却可能还在读取旧名字。for、id、name都像“字段名称”,用途却不同。
先保存当前模板,再改这一组。前台用明确测试值提交,确认邮件里的三个值对应各自字段;收件设置和发信通道另查。标签关联通过,仍不能证明邮件已经送到收件箱。
复选框分组和标签,怎样设置
一组复选框不能整个包在一个label里。每个选项都需要自己的标签,组的题目可以用fieldset和legend等方式表达。CF7提供use_label_element来为各个选项生成标签,见多个控件错误说明。
<fieldset>
<legend>希望了解哪些资料?</legend>
[checkbox requested-info use_label_element "产品参数" "报价" "交货安排"]
</fieldset>
这是一个教学选择组。外层legend说明整组题目,各个选项的标签分别对应自己的控件。分组方式可对照W3C表单分组教程。

一页放两份表单,怎样避免点错输入框
正文底部和页脚都放一份询盘表单时,标签文字可以一样,但HTML id需要唯一。若把同一份CF7模板用两个短代码插入,其中手写的quote-email-main可能也重复两次。给短代码外面的容器改个名字,并不会自动改掉模板里的输入框id。
先判断是否真的需要两份完整表单。一个表单能承担任务时,上面的按钮可以带用户到它,减少重复填写入口。确实需要两份时,可以维护第二份表单模板,把输入框id和相应for改成另一组;字段name和各自邮件引用按约定保留。下面只演示邮箱关联:
主表单:
<label for="quote-email-main">工作邮箱</label>
[email* your-email id:quote-email-main]
页脚表单:
<label for="quote-email-footer">工作邮箱</label>
[email* your-email id:quote-email-footer]
这是两份模板中的对应片段,不是让你把它们粘到同一个表单里。它们的相同name用于各自提交,相同标签文字方便阅读,不同id让同页关联明确。主题自动生成字段或用其他动态方法时,也要核渲染后的结果,而不能只看配置名称。
前台分别点主表单和页脚的“工作邮箱”。哪一个标签就应该聚焦哪一份输入框。再分别输入不同的明显测试值并提交,核各自邮件。点击页脚标签却跳到正文输入框,是当前关联没有通过,不需要先去改SMTP。
五分钟检查,验证客户真的能填写
打开未登录页面,先填入各字段,再检查下面的动作。时间只是这轮小检查的安排,不代表完整无障碍验收只需五分钟。
- 填入姓名和邮箱后,字段标签仍清楚可见。
- 点击“工作邮箱”标签,正确的邮箱输入框取得焦点。
- 只用键盘Tab前进,顺序合理,焦点能看见;复选框可以正常选择。
- 故意漏填一个必填项,提交后能知道哪个字段需要修正,并能继续完成。
- 在手机及放大显示时检查标签、提示、输入内容和错误信息,不横向裁掉重要文字。
这组检查能发现基本关联和阅读问题,但不能单独证明整个表单已经符合所有无障碍要求。复杂表单还要核对错误提示、焦点处理和使用真实辅助技术的情况。
若问题主要是手机间距和面板遮挡,接着看WordPress移动端优化。
表单信息清楚之后,下一步再查提交和收件
标签正确,不代表邮件一定能送达。用明显的测试内容提交一次,核对成功反馈、收件记录及字段值,避免把排版改善当作整条询盘链路已经通过。
发送与收件问题交给WordPress表单邮件排查。如果有图纸上传,还需要给文件格式和大小说明,按报价表单图纸上传教程检查实际附件。
需要维护者帮助时,提供具体页面、字段名、前台关联结果和邮件里是否出现该值。这样的交接比“表单体验不好”更容易修到正确位置。
常见问题
用placeholder写“邮箱”,就已经有可访问名称了吗?
不要把占位符当作标签关联的替代。检查实际label与控件关系,保留适合普通用户持续辨认的字段名称。
改id以后,邮件中的字段名也必须一起改吗?
它们用途不同。先核对CF7字段name及邮件引用;调整HTML id与label for,不必自动更改提交字段名。
页面上两个一样的表单,标签文字一样有问题吗?
文字可以相同,但实际控件ID要避免重复,关联不能串到另一份表单。两份都点击、填写和提交测试,不能只验第一份。



