CSS样式的引入方式

css样式的引入有三种方式:
1.css内联式,可直接写在html标签内,一般不建议这种写法。

<p style="color:red;font-size:12px">这里文字是红色</p>

2.css嵌入式,CSS代码写在<style>标签中并放在head标签内

<style type="text/css">
p{
    font-size:10px;
}
</style>

3.css样式导入,link和import方式
【1】.link链接<link href="main.css" rel="stylesheet" type="text/css" />
【2】.import导入 <style type="text/css">@import "blue.css"</style>
注:三种css引入方式的优先级,内联式》嵌入式》导入式。嵌入式>导入式有一个前提:嵌入式css样式的位置一定在外部式的后面。一般将<link href="style.css" ...>代码写在<style type="text/css">...</style>嵌入式的前面(实际开发中也是这么写的)。其实总结来说,就是就近原则(离被设置元素越近优先级别越高)(引入css样式、A链接使用href,引入其他的图片,js代码使用src)
link和import方式的区别:
link和@import的最根本区别就是,link是一个html的一个标签,而@import是css的一个标签。link属于XHTML标签(功能不局限于导入CSS),而@import则是CSS提供的一种规则(CSS2.1提出的规范,老浏览器不兼容)。
【1】@import url()机制是不同于link的,link是在加载页面前把css加载完毕,所以显示出来的页面从开始就是带样式效果的;而@import url()则是读取完文件后再加载样式,所以会出现一开始没有css样式,闪烁一下出现样式后的页面(网速慢的情况下)。
【2】使用javascript控制dom改变样式的时候只能使用link标签,@import导入的样式不受dom控制其样式。


文件路径,绝对路径和相对路径

../main.css 、./main.css、main.css、/main.css有什么区别

  1. ../main.css 相对路径,指向当前所在目录的上级目录下的main.css文件
  2. ./main.css 相对路径,指向当前所在目录下的main.css文件
  3. main.css 绝对路径,指向当前所在目录下的main.css文件
  4. /main.css 绝对路径,指向根目录下的main.css文件

text-align的作用

text-align有5个值,left/right/center/justify/inherit,左对齐/右对齐/居中对齐/两端对齐/继承父元素align值。justify两端对齐的时候,每行中的字间距可能不一致。
text-align.png


css尺寸单位,px、em、rem

px像素单位,em、rem相对单位,em(相对父元素字体大小的倍数,父元素不存在时继续向上层找其父元素,如找不到则以浏览器默认字体16px大小为基准) ,rem(相对于HTML根节点元素字体大小的倍数)。对于只需要适配少部分手机设备,且分辨率对页面影响不大的,使用px即可。 对于需要适配各种移动设备,推荐使用rem
1.px:是你屏幕设备物理上能显示出的最小的一个点,这个点不是固定宽度的,不同设备上点的长宽、比例有可能会不同。假设:你现在用的显示器上1px宽=1毫米,但我用的显示器1px宽=两毫米,那么你定义一个div宽度为100px,你显示器上看这个div是10厘米,我显示器上看是20厘米。另外一个px点的长宽不一定是1:1的正方形,有的设备上长宽比是不一样的。IE无法调整那些使用px作为单位的字体大小。
2.em:所有现代浏览器下默认字体尺寸是16px。这时1em=16px。然后你人为的把body里面定义font-size:12px;(把浏览器默认16px改小了),此刻1em=12px,如果是0.8em则实际等于12px*0.8。em的用处是你要整个网页字体统一变大变小你只要改body里面font-size的值就行了.

<style>
      body{
    font-size: 16px;
    }
      p{
    font-size:0.75em;
    }
      span{
    font-size:2em;
    }
</style>

    <html>
      我大小为16px;
      <p>此段落文字大小为12px(16×0.75);
      <span>我大小是2em,即24px,这里是相对父级字号×2的,而不是相对body里面的16px</span>
      </p>
     </html>

3.rem em相对父级,嵌套层多了算字体大小很麻烦。所以有了Rem(IE6-8不支持),他只相对html根元素字体尺寸(默认还是16px,除非你自己用font-size定义其他大小),rem没有了继承父级尺寸这个关系。通过rem既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐层复合的连锁反应。比如默认的html font-size=16px,那么我想设置12px 的文字就是:12÷16=0.75(rem),实际开发中为了便于计算,我们改变一下html的默认font-size=10px不就好计算了(10÷16=62.5%)!再将原来的px数值除以10,然后换上em作为单位。对于不支持rem的浏览器,应对方法也很简单,就是多写一个绝对单位PX的声明。这些浏览器会忽略用rem设定的字体大小。

html{
    font-size:62.5%; <!--10÷16=62.5%-->
}

body{
    font-size:12px;
    font-size:1.2rem ; <!-- 12÷10=1.2rem -->
} 
p{
    font-size:14px;
    font-size:1.4rem;<!--14÷10=1.4rem-->
} 

如下代码,设置 p为几 rem,让h1和p的字体大小相等?

  <h1>title</h1>
  <p>title</p>
   <style>
    html{
    font-size: 62.5%;
  }
    p{
    font-size: ?rem;
  }
    h1{
    font-size: 60px;
  }
 </style>

浏览器默认字体大小为16px,代码中html标签样式font-size:62.5%设置字体大小为62.5%,即0.625×16=10px,所以当前浏览器默认的字体大小被修改为10px。rem基于HTML根元素字体大小为参考,p标签中的font-size设置为6rem时(6rem×10)即为60px,可与h1标签字体大小相同。


chrome 调试介绍

console.log主要用于对JavaScript程序调试,相比于alert(),console.log仅在控制台中打印相关信息,不会阻断JavaScript程序的执行。console.log()可以接受任何字符串、数字和JavaScript对象。与alert()函数类似,console.log()也可以接受换行符n以及制表符t。console.log()语句所打印的调试信息可以在浏览器的调试控制台中看到。
chrome调试界面.png


x868086
89 声望5 粉丝

« 上一篇
HTML规范