zoukankan      html  css  js  c++  java
  • 【DOM编程艺术】谈web设计

    谈到web设计,最准确的理解是把网页看成三个层:

    (1)结构层

    (2)样式层

    (3)行为层

    这三个层分别对应不同的技术,分别是:

    (1)超文本标记语言(HTML)

    (2)层叠样式表(CSS)

    (3)Javascript和文档对象模型(DOM)

    没错,你可以说还能加一层,也就是浏览器的Javascript API,包括cookie和window等。

          但随着HTML5的到来,上面所说的结构层、样式层和行为层(以及浏览器中的Javascript API)已经被整装到一个集合中,

    不过也仅仅就是一个集合。

      HTML5在这个集合中提供了几种旗鼓相当的技术,让我们可以按需取用或者调用。

         例如:在结构层中,HTML5添加了新的标记元素,如<section>、<article>、<header>和<footer>。

                                  HTML5提供了更多交互及媒体元素,如<canvas>、<audio>和<video>。

               表单得到了加强,新增了颜色拾取器,数据选择器、滑动条和进度条。

               除此之外,你会发现其中很多新元素都还带有自己的Javascript和DOM API。

                  在行为层中,HTML5规定了DOM中每个新元素的交互方式,以及新的API。

                                   例如,我们可以自定义<video>元素的控件,改变其播放方式

                                            <form>元素则支持进度控制

                  而在<canvas>元素中,可以绘制各种图形和添加图片及其他图像。

         在表示层中,css3的多个模块囊括了高级选择器、渐变、交换,还有动画。

                  最后,新Javascript API 还包括很多模块,比如Geolocation、Storage、Drap-and-Drop、Socket以及多线程等。

                  推荐一个工具:Modernizr 以测试浏览器是否支持某些特性

         使用Modernizr非常简单,将在文档的<head>中添加该脚本:<script src='modernizr.js'></script>

         解析:一定要把这个脚本放在<head>元素中,虽然这与之前建议的不一致,但这样做有特殊的原因:

            把Modernizr放在文档的开头,可以在加载其他标记之前先加载它,以便它在文档呈现之前能够创建好新的HTML5元素。

            要是把它放到了文档的末尾,那么等不到Modernizr发挥作用,浏览器就已经开始呈现文档并应用样式了。

  • 相关阅读:
    【LeetCode每天一题】Rotate List(旋转链表)
    【LeetCode每天一题】Permutation Sequence(排列序列)
    【LeetCode每天一题】Length of Last Word(字符串中最后一个单词的长度)
    【LeetCode每天一题】Merge Intervals(合并区间)
    【LeetCode每天一题】Spiral Matrix II(螺旋数组II)
    Ajax基础
    git的命令行操作
    新闻发布系统之登录和注销
    JSTL和EL
    servlet模板的修改
  • 原文地址:https://www.cnblogs.com/positive/p/3683932.html
Copyright © 2011-2022 走看看