一、样式有几种引入方式?link和@import有什么区别?

  1. 样式有3种引入方式:

    • 外部样式(外联式Linking):是将网页链接到外部样式表
      <link rel="stylesheet" type="text/css" href="index.css">
    • 内部样式(嵌入式Embedding):在网页上创建嵌入的样式表
      <style rel="stylesheet" type="text/css">
      p{
      color:red;
      }
      </style>
    • 内联样式(内联式Inline):应用内联样式到网页元素
      <p style="color:red; font-siez:14px;">Hello World!</p>
  2. link和@import有什么区别?
    • 本质上,这俩种方式都属于外联式Linking,都是为了引入CSS文件,但还是存在细微差别。

      • 差别1:link标签除了可以加载css外,还可以定义RSS,定义rel连接属性等,而@import就只能加载CSS。
      • 差别2:加载优先级。当一个页面被加载时,link引用的CSS会同时被加载,而@import引用的CSS会等到页面全部下载完之后再被加载。所以有时在浏览@import加载的样式页面时开始会没有样式(也就是会出现闪烁,这种情况会出现在网速比较慢的时候)。
      • 差别3:兼容性的差异。由于@import是CSS2.1提出的,所以老版本的浏览器不支持,@import只有在IE5以上的版本才能识别,而link无此顾虑。
      • 差别4:使用DOM控制样式时差别。当使用JavaScript控制样式时只能使用link标签,因为@import不是DOM可以控制的。
      • 差别5:@import可以在CSS中再次引入样式表,虽然这样做有利于修改和扩展,不过这样做有一个缺点,会对网站服务器产生过多的HTTP请求,以前是一个文件,现在确实俩个或更多文件了,服务器的压力增大,浏览量大的网站还是谨慎使用。(确实,在浏览量大的网站中首页或栏目首页等项目都会直接把CSS或JS直接写在HTML中,而不是用link或者@import外置引用。

二、文件路径 ../main.css、./main.css、main.css有什么区别?

  • ../main.css是上一级文件夹中名为main.css的文件
  • ./main.css是当前目录中名为main.css的文件
  • main.css相当于 ./main.css的简写,也是指当前目录中的文件

三、console.log是做什么用的?

  • 调试代码
  • 让程序员更好的知晓在页面渲染时候代码的进程
  • 彪悍的输出记录功能,可以从自己的页面上调用,也最快的方式转存尽可能多的信息到控制台上,从而更加醒目的让人意识到JS下一步需要做什么。
  • 相比alert的优点是:
    • console.log能看到结构性的东西,如果是alert,弹出一个对象就是『object object』,但是console能看到对象的内容。
    • console不会打断你页面的操作,如果用alert弹出内容,那么页面就死了,但是console输入内容之后页面还是可以操作的。
    • console的内容非常丰富,可以在控制台输入console进行查看。

四、text-align:justify是什么意思?

  • 这个属性值是文本俩端对齐的意思。
  • 对齐的内容可以是纯文本,纯英文,以及中英文混排,都可以实现完美的俩端对齐。

五、px、em、rem分别是什么?有什么区别?如何使用?

  • px像素(pixel)相对长度单位。像素px是相对于显示器的分辨率而言的。

    • px特点:

      • IE无法调整那些使用px作为单位的字体大小;
      • Firefox能够调整px和em、rem,但是96%以上的中国网民使用IE或者IE内核的浏览器。
    • px使用:
      • 任意浏览器的默认字体都是16px,chrome的最小字体大小是12px。
  • em是相对长度单位。相对于当前对象内文本的尺寸,如果当前文本为设置尺寸,则向上查询并继承尺寸,如果都没有设置尺寸,则相对于浏览器的默认字体尺寸(16px)。
    • em特点:

      • em的值并不是固定的;
      • em会继承父级元素的字体大小。
    • em使用:
      • 任意浏览器的默认字体大小都是16px,所以未调整的浏览器都符合1em=16px;
      • 那么12px=0.75em,10px=0.625em;
      • 为了简化font-size的换算,需要在CSS中的body选择器中声明font-size=62.5%,这就使em的值变为16px*0.625=10px,这样12px=1.2em,10px=1em,也就是说只需要将原来的px值除以10,然后换上em作为单位就行了。
  • rem(root em)是相对于HTML根节点的单位。
    • rem特点:

      • rem是CSS3新增的一个相对单位;
      • 这个单位和em的区别是rem仍然是相对单位,但只是相对于HTML根节点的;
      • 这个单位可谓是集相对大小和绝对大小的优点于一身,通过它既可以做到只修改根节点大小就可以成比例的调整所以的字体,有可以避免字体大小逐层复合的连锁反应。
      • 目前,除了IE8及更早的版本外,所有的浏览器均已支持rem,应对方法也很简单,就是多写一个绝对单位的声明,这些浏览器会忽略rem设定的字体大小。
  • 选择使用什么单位主要是看项目的客户群,如果客户都似乎使用新版浏览器,那么就放心大胆的使用rem,如果要考虑兼容性,那就是要px,或者俩者同时使用。

六、对chrome审查元素的功能做个简单的截图介绍。

elements

network简单介绍

resources介绍

Audits优化建议

Timeline内存优化

随机推荐

  1. Java基础01 从HelloWorld到面向对象(转载)

    Java是完全面向对象的语言.Java通过虚拟机的运行机制,实现“跨平台”的理念. "Hello World!" public class HelloWorld{    publi ...

  2. org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [cn.facekee.cms.entity.CmsFansgroup#195]

    刚开始报错还是报的稀奇古怪的错误,让我纠结了好久,再三检查报错的位置,发现并没有错误,最后认真分析查看每行报错的信息才找到如题所述的错误!!!!! 报这种错误的原因可能是POJO映射文件中的字段和数据 ...

  3. SQL.Cookbook 读书笔记3 操作多个表

    第三章 操作多个表 表连接的内连接和外连接 A表 B表id name id name 1 a 1 b 2 b 3 c4 c内连接就是左表和右表相同的数据,查询结果只有相等的数据:select * fr ...

  4. python学习【第四篇】python函数 (一)

    一.函数的介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以 ...

  5. ul和li弄的图片列表

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. Palindrome Function

    Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 256000/256000 K (Java/Others)Total Submissio ...

  7. mysql中对应oracle中的to_char()和to_number()函数

    TO_CHAR(): CAST(123   AS   CHAR(3)) TO_NUMBER(): cast( '123 '   as   SIGNED   INTEGER)

  8. 利用Google Analytics API实现自己的统计报表

    Google Analytics 简称 GA,功能实在是太强大了,正因如此,导致调研GA API花费了大量的时间,太多的名词需要梳理. 正确的学习步骤是: 首先,找个有权限的账号,登录GA(https ...

  9. js 自学,云知梦知识 点理论

    一.第1章(1--4) 何为js特效 1.定义事件(触发时机+行为) 2.触发事件(行为发生) 3.事件发生是具有重复性   js是基本对象的语言. 面向对像编程 1.如何获得该对象 2.如何 调用该 ...

  10. 【题解】CF611H New Year and Forgotten Tree

    [题解]CF611H New Year and Forgotten Tree 神题了... 题目描述 给定你一棵树,可是每个节点上的编号看不清了,只能辨别它的长度.现在用问号的个数代表每个节点编号那个 ...