HTML


概念:

  超文本标记语言。

核心:

  语义。

主体结构:

  <!doctype html>  //告诉浏览器这是什么语言
  html       //主体
  head      //头文件
  body      //页面主体
  meta       //设置字符集,放在head标签的第一行
  title       //网页标题

<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。(重点:告诉浏览器按照何种规范解析页面)

主流浏览器内核:

  IE: trident内核

  Firefox:gecko内核

  Safari:webkit内核

  Opera:以前是presto内核,Opera现已改用Google Chrome的Blink内核

  Chrome:Blink(基于webkit,Google与Opera Software共同开发)

常用的标签:

  功能性标签

    超链接:<a herf=“链接地址”>文字内容 </a>

    表格:table
        tr行
        td列
        th相当于加粗居中的td
        align对齐方式
        bgcolor表格背景颜色
        collspacing=“0” 单元格之间的距离为0
        border-collapse:collapse表格内部之间的距离
        rules=“all”内部边框的显示
        border=“1”表格边框的宽度

    表单:form用于用户输入input表单的

    iframe:iframe 元素会创建包含另外一个文档的内联框架,无法解析的文字放入会原样输入

    列表:
      无序列表:ul li
      有序列表:ol li
      自定义列表:dl dt  (dd修饰dt)

    图片:img 

        通过img标签的src引入图片地址

        【注】在开发过程中一定要写alt属性,当图片加载失败的时候显示的文字,会加强搜索引擎对网页的排名

      img的alt与title有何异同?

          alt(alt text):为不能显示图像、窗体或applets的用户代理(UA),alt属性用来指定替换文字。替换文字的语言由lang属性指定。

                (在IE浏览器下会在没有title时把alt当成 tool tip显示)

          title(tool tip):该属性为设置该属性的元素提供建议性的信息。

  辅助性标签

      部分举例:

        b  加粗
        i   倾斜
        strong  加粗
        em    加粗
        ....

      strong与em的异同?

          strong:粗体强调标签,强调,表示内容的重要性

          em:斜体强调标签,更强烈强调,表示内容的强调点

  HTML5新增的语义化结构标签:

    section元素 表示页面中的一个内容区块

    article元素 表示一块与上下文无关的独立的内容

    aside元素是辅助 article 区域的内容。也可以理解为整个网页的 辅助区域

    header元素 表示页面中一个内容区块或整个页面的标题

    footer元素 表示页面中一个内容区块或整个页面的脚注

    nav元素 表示页面中导航链接部分

    figure元素 表示一段独立的流内容,使用figcaption元素为其添加标题(第一个或最后一个子元素的位置)

    main元素 表示页面中的主要的内容(ie不兼容)

  语义化功能标签:   

        meter
        progress
        output
        .....

  无语义标签:

        div 
        span

  多媒体标签:

      audio  音频播放(注意:<audio>元素不支持播放wma格式的文件)

      video  视频播放

      source  为video和audio提供媒介资源

            media:规定媒体资源的类型(没有浏览器支持)

            src:规定媒体文件的url

            type:规定媒体资源的MIME类型

                常用类型
                  音频
                    audio/ogg
                    audio/mpeg
                  视频
                    video/ogg
                    video/mp4
                    video/webm

标签等级分类:

    文本级标签:

          span
           i
           b
           p(最特殊)
           ...

    容器级标签:  

          div
          h1
          ul li
          ....

条件注释:

      gt:大于

      lt:小于

      gte:大于等于

      lte:小于等于

      写法示例
          <!--[if lte ie8]>

            您的浏览器版本过低

          <![endif]-->

CSS


定义:

  层叠样式表

核心:

  层叠

用法:

    写在标签里的style属性:权重最高

    style标签:直接写css
          @import url()

    link标签:引入外部样式

选择器:

    三大基础选择器:   

        标签:权重最低
         id:权重最高
        class:权重其次

    高级选择器:(具体用法及规则请查询w3c)

        并集
        交集
        后代
        子元素选择器
        相邻兄弟选择器
        普通兄弟选择器
        通配符
        超链接伪类选择器

css3选择器:

    属性选择器:    

          E[attr] 选择具有某个属性的元素

          E[attr=value] 选择某个属性等于指定值的元素

          E[attr^=value] 选择某个属性值以value开始的元素

          E[attr$=value] 选择某个属性值以value结尾的元素

          E[attr*=value] 选择某个属性值中包含value的元素

          E[attr~=value] 属性列表中包含有value

          E[attr|="value"] 指定了属性名,并且属性值是value或者以“value-”开头的值(比如说zh-cn);

     结构伪类选择器:

          X:first-child 匹配子集的第一个元素。IE7就可以支持

          X:last-child匹配父元素中最后一个X元素

          X:nth-child(n)用于匹配索引值为n的子元素。索引值从1开始

          X:only-child这个伪类一般用的比较少,比如上述代码匹配的是div下的有且仅有一个的p,也就是说,如果div内有多个p,将不匹配。

          X:nth-of-type(n)匹配同类型中的第n个同级兄弟元素X

          X:only-of-type匹配属于同类型中唯一兄弟元素的X

          X:first-of-type匹配同级兄弟元素中的第一个X元素

          X:nth-last-child(n)从最后一个开始算索引。

          X:nth-last-of-type(n) 匹配同类型中的倒数第n个同级兄弟元素X

          X:root匹配文档的根元素。在HTML(标准通用标记语言下的一个应用)中,根元素永远是HTML

          X:empty匹配没有任何子元素(包括包含文本)的元素X

     目标伪类选择器:

          E:target 选择匹配E的所有元素,且匹配元素被相关URL指向

     UI元素状态伪类选择器:

          E:enabled 匹配所有用户界面(form表单)中处于可用状态的E元素

          E:disabled 匹配所有用户界面(form表单)中处于不可用状态的E元素

          E:checked 匹配所有用户界面(form表单)中处于选中状态的元素E

          E:selection 匹配E元素中被用户选中或处于高亮状态的部分

     否定伪类选择器:

          E:not(s) (IE6-8浏览器不支持:not()选择器)

      

     动态伪类选择器:

          E:link
              链接伪类选择器
              选择匹配的E元素,而且匹配元素被定义了超链接并未被访问过。常用于链接描点上

          E:visited
              链接伪类选择器
              选择匹配的E元素,而且匹配元素被定义了超链接并已被访问过。常用于链接描点上

          E:active
              用户行为选择器
              选择匹配的E元素,且匹配元素被激活。常用于链接描点和按钮上

          E:hover
              用户行为选择器
              选择匹配的E元素,且用户鼠标停留在元素E上。IE6及以下浏览器仅支持a:hover

     层级选择器:

          E>F  子元素选择器

          E+F  相邻兄弟选择器

          E~F  通用选择器/普通兄弟选择器

权重比较:

      id、class、html标签选择器的数量

      权重不同看权重等级

      权重相同看位置

     【继承】
        看谁近
        一样近,比较权重
        不一样,谁的权重大听谁的
        权重一样,听后面的

布局:

     标准文档流:

          定义:网页的解析顺序

          特性:从左往右,从上往下

          标签等级分类:行内元素,块级元素,行内块元素

          脱离标准文档流方法:
                    浮动
                    绝对定位和固定定位

          更改元素等级: display

                    常用值:none,inline,block,inline-block

盒子模型:

      主要元素:width,height ,padding ,border,margin
     
      BFC:

          定义:块级格式化上下文
          触发方式:
              display不为none
              定位不为static
              overflow不为visiable
              浮动为none
              html
              。。。

          解决问题:
              margin塌陷
              布局

      Tip:调整子元素的位置,尽可能适合用padding,不用margin

浮动:

      类型:float:left|right

      特性:脱离文档流,但是不脱离文本流,产生字围效果,兄弟元素之间相互贴靠等

      浮动带来的影响:高度塌陷,影响布局

      清除浮动:
        overflow:hidden
        clear:both

      完美解决方案:

.clearfix {
*zoom:;
} .clearfix:before, .clearfix:after {
content: " ";
display: table;
} .clearfix:after {
clear: both;
}

定位:

    CSS position 属性

        通过使用 position 属性,我们可以选择 4 种不同类型的定位,这会影响元素框生成的方式。

     position 属性值的含义:

        static
        元素框正常生成。块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创建一个或多个行框,置于其父元素中。
        relative
        元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。
        absolute
        元素框从文档流完全删除,并相对于其包含块定位。包含块可能是文档中的另一个元素或者是初始包含块。
        元素原先在正常文档流中所占的空间会关闭,就好像元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框。
        fixed
        元素框的表现类似于将 position 设置为 absolute,不过其包含块是视窗本身。

    提示:相对定位实际上被看作普通流定位模型的一部分,因为元素的位置相对于它在普通流中的位置。

    

      CSS 定位属性允许你对元素进行定位。

属性 描述
position 把元素放置到一个静态的、相对的、绝对的、或固定的位置中。
top 定义了一个定位元素的上外边距边界与其包含块上边界之间的偏移。
right 定义了定位元素右外边距边界与其包含块右边界之间的偏移。
bottom 定义了定位元素下外边距边界与其包含块下边界之间的偏移。
left 定义了定位元素左外边距边界与其包含块左边界之间的偏移。
overflow 设置当元素的内容溢出其区域时发生的事情。
clip 设置元素的形状。元素被剪入这个形状之中,然后显示出来。
vertical-align 设置元素的垂直对齐方式。
z-index 设置元素的堆叠顺序。

    【注】定位的参考点很重要,具体参考w3c学习

table:

    tr , td , th

    核心属性: colspan , rowspan

    【tip】在早些年前采用table表格布局,现在已经淘汰

div+css的布局较table布局有什么优点?

    改版的时候更方便 只要改css文件。

    页面加载速度更快、结构化清晰、页面显示简洁。

    表现与结构相分离。

    易于优化(seo)搜索引擎更友好,排名更容易靠前。

更多请看(HTML + CSS)下篇

最新文章

  1. JavaScript学习笔记(四)——jQuery插件开发与发布
  2. 使用syncthing进行双机文件同步
  3. Android 中JNI创建实例
  4. iptables 开启80端口
  5. Coding 初级教程(一)——用GitHub的GUI客户端对Coding的项目进行管理
  6. 面试之get和post(转)
  7. Android学习笔记:ListView简单应用--显示文字列表
  8. [C++]指针浅析
  9. 《java入门第一季》之java语法部分小案例
  10. two sum II
  11. Spring Conditional注解使用小结
  12. 实验七:Xen环境下cirrOS的安装配置
  13. Yarn的Linking dependencies特别慢的优化方法
  14. Asteroids POJ - 3041 匈牙利算法+最小点覆盖K&#246;nig定理
  15. linux 系统下使用socket进行本地进程间通信
  16. poj2279 线性dp
  17. java显示树结构
  18. English trip EM2-PE-1B Teacher:Patirck
  19. 【转】Linxu学习---top实践
  20. ubuntu 12.04 桌面版关闭图形界面

热门文章

  1. Linux上用sublime编辑Python时候出现&quot;SyntaxError: Non-ASCII character ‘\xe5′ in file&quot;的问题
  2. IDisposable实现的方法什么时候被执行的
  3. k8s的存储卷
  4. 初识PHP变量函数语法
  5. js 模板引擎 -Art Template
  6. How can I check the last time stats was run on Oracle without using OEM
  7. JavaSE---IO体系
  8. GA来源分析
  9. STM32串口USART通信总结
  10. delphi 监控文件系统