日期:2014-01-22 浏览次数:21300 次
今天看到一篇文章:Styling buttons to look like links,里面讲到一些东西挺实用,也确实需求开发者留意。比如,有些开发者就是会用 a 标签来做提交。比如有一个列表,每个列表后面都会有一个“删除”链接:
1 |
列表列表 <a href="/delete.php?id=xxx" title="">删除</a> |
点击删除链接后就会带一个id或者其它参数到delete.php页面,delete.php中再去实现删除的逻辑。这样做有一个问题,就是它提交参数使用的是 GET 方法。依据HTML中的定义,GET方法普通是用来获取数据的,不会涉及到对后端数据的修正;而POST方法则可能包含对数据库的修正等操作,所以删除用链接实现不太好。有一种处理办法就是把 button 伪装成超链接的样子,然后在外面套上 form ,CSS 如今很强大,伪装一下不是很困难,可以参考这篇文章:Styling buttons to look like links 。另外,绝对于用 input 实现按钮而言,button 更强大一点,建议多用 button 。
有时候设计师为了界面上的美观或者UI上的分歧,会把一些元素设计成超链接的样子,然后web developer 拿过来图之后可能就“忠实”执行设计师的意图把那个地方做成了超链接,却忽略了一些功用上的考虑。这个就好像HTML标签语义化一样,虽然有些地方用 div 或者 span 看上去都一样,但是还是有区别的。当前做东西的时候我一定要多想想,不要被表面的东西迷惑了。