zoukankan      html  css  js  c++  java
  • 避免常见的6种HTML5错误用法

    一、不要使用section作为div的替代品
    二、只在需要的时候使用header和hgroup
    三、不要把所有列表式的链接放在nav里
    四、figure元素的常见错误
    五、不要使用不必要的type属性
    这是个常见的问题,但并不是一个错误,我认为我们应该通过最佳实践来避免这种风格。

    在HTML5中,script和style元素不再需要type属性。然而这些很可能会被你的CMS自动加上,所以要移除也不是那么的轻松。但如果你是手工编码或者你完全可以控制你的模板的话,那真的没有什么理由再去包含type属性。所有的浏览器都认为脚本是javascript而样式是css样式,你没必要再多此一举了。

    <!-- 请不要复制这段代码!它太冗余了! -->
    <link type="text/css" rel="stylesheet" href="css/styles.css" />
    <script type="text/javascript" src="js/scripts" /></script>
    其实只需要这样写:

    <link rel="stylesheet" href="css/styles.css" />
    <script src="js/scripts" /></script>

    六、form属性的错误使用

    HTML5引入了一些form的新属性,以下是一些使用上的注意事项:

    布尔属性

    一些多媒体元素和其他元素也具有布尔属性。这里所说的规则也同样适用。

    有一些新的form属性是布尔型的,意味着它们只要出现在标签中,就保证了相应的行为已经设置。这些属性包括:

    autofocus
    autocomplete
    required
    坦白的说,我很少看到这样的。以required为例,常见的是下面这种:

    <!-- 请不要复制这段代码! 这是错的! -->
    <input type="email" name="email" required="true" />
    <!-- 另一个错误的例子 -->
    <input type="email" name="email" required="1" />
    严格来说,这并没有大碍。浏览器的HTML解析器只要看到required属性出现在标签中,那么它的功能就会被应用。但是如果你反过来写equired=”false”呢?

    <!-- 请不要复制这段代码! 这是错的! -->
    <input type="email" name="email" required="false" />
    解析器仍然会将required属性视为有效并执行相应的行为,尽管你试着告诉它不要去执行了。这显然不是你想要的。

    有三种有效的方式去使用布尔属性。(后两种只在xthml中有效)

    required
    required=”"
    required=”required”
    上述例子的正确写法应该是:

    <input type="email" name="email" required />

    http://www.daqianduan.com/6-tips-html5/

  • 相关阅读:
    CAGradientLayer
    AndroidStudio -- AndroidStuido中找不到cache.properties文件
    logcat -- 基本用法
    UiAutomator -- UiObject2 API
    Android UiAutomator UiDevice API
    Ubuntu 连接手机 不识别设备 -- 解决办法
    Ubuntu Cannot run program "../SDK/build-tools/xxx/aapt": erro = 2 No such file or directory
    Junit4
    Android Studio下运行UiAutomator
    Gradle sync failed: failed to find Build Tools revision 21.1.2
  • 原文地址:https://www.cnblogs.com/everyone/p/3079281.html
Copyright © 2011-2022 走看看