所以我一直在阅读很多“使用 Web 标准进行设计”并且非常喜欢它。我是 CakePhp 的大用户,当我查看 Cake 使用其 FormHelper 创建的各种表单元素的源代码时,我看到了各种无关的
在书中,他提倡语义化 HTML,并尽可能将您的标记写得简单/通用。
所以我的问题是,在这些情况下我是否更好地编写自己的 HTML?我真的很想按照 XHTML 和 CSS 标准工作,而且我似乎会花同样多的时间(如果不是更多的话)清理 Cakes HTML,而我可以自己编写
想法?
ps 这是 CakePhp 使用 FormHelper 生成的开箱即用表单中的示例
<form id="CompanyAddForm" method="post" action="/omni_cake/companies/add" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST" /></div> <div class="input text required"><label for="CompanyName">Name</label><input name="data[Company][name]" type="text" maxlength="50" id="CompanyName" /></div> <div class="input text required"><label for="CompanyWebsite">Website</label><input name="data[Company][website]" type="text" maxlength="50" id="CompanyWebsite" /></div> <div class="input textarea"><label for="CompanyNotes">Notes</label><textarea name="data[Company][notes]" cols="30" rows="6" id="CompanyNotes" ></textarea></div> <div class="submit"><input type="submit" value="Submit" /></div></form>
编辑: 缩进形式(缩进不会影响标准合规性问题,但上述单行样式几乎不可能阅读):
<form id="CompanyAddForm" method="post" action="/omni_cake/companies/add" accept-charset="utf-8">
<div style="display:none;">
<input type="hidden" name="_method" value="POST" />
</div>
<div class="input text required">
<label for="CompanyName">Name</label>
<input name="data[Company][name]" type="text" maxlength="50" id="CompanyName" />
</div>
<div class="input text required">
<label for="CompanyWebsite">Website</label>
<input name="data[Company][website]" type="text" maxlength="50" id="CompanyWebsite" />
</div>
<div class="input textarea">
<label for="CompanyNotes">Notes</label>
<textarea name="data[Company][notes]" cols="30" rows="6" id="CompanyNotes" ></textarea>
</div>
<div class="submit">
<input type="submit" value="Submit" />
</div>
</form>
在上面,有几个 div 看起来是不必要的,比如具有内联 CSS“display:none”的那个。我意识到我可以更改所有字段的类和 ID,但如果我为每个字段都这样做,我还不如自己编写 HTML...