css基础知识一

CSS的全称是什么?

英文全称:Cascading Style Sheets
中文全称:层叠样式表

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

有 4 种方式可以在 HTML 中引入 CSS。
1.行内样式
  行内样式指的是直接在 HTML 标签中的 style 属性中添加 CSS。
示例:<div style="background: red"></div>
  这通常是个很糟糕的书写方式,它只能改变当前标签的样式,如果想要多个 <div> 拥有相同的样式,你不得不重复地为每个 <div> 添加相同的样式,如果想要修改一种样式,又不得不修改所有的 style 中的代码。很显然,行内样式引入 CSS 代码会导致 HTML 代码变得冗长,且使得网页难以维护。 
2.内部方式 
  内部方式指的是在 HTML 头部中的 <style> 标签下书写 CSS 代码。
示例:

<head>
    <style>
    div{
        background: red;
    }
    </style>
</head>

内部方式的 CSS 只对当前的网页有效。因为 CSS 代码是在 HTML 文件中,所以会使得代码比较集中,当我们写模板网页时这通常比较有利。因为查看模板代码的人可以一目了然地查看 HTML 结构和 CSS 样式。因为内部的 CSS 只对当前页面有效,所以当多个页面需要引入相同的 CSS 代码时,这样写会导致代码冗余,也不利于维护,一般用于个人自己写demo。

  1. 外部样式
      外部样式指的是使用 HTML 头部的 <head> 标签引入外部的 CSS 文件。
    示例:
<head>
    <link rel="stylesheet" type="text/css" href="style.css">
</head>

这是最常见的也是最推荐的引入 CSS 的方式。使用这种方式,所有的 CSS 代码只存在于单独的 CSS 文件中,所以具有良好的可维护性。并且所有的 CSS 代码只存在于 CSS 文件中,CSS 文件会在第一次加载时引入,以后切换页面时只需加载 HTML 文件即可。

  1. 导入样式
      导入样式指的是使用 CSS 规则引入外部 CSS 文件。
    示例:
<style>
    @import url(style.css);
</style>

方法3、4两者都是外部引用CSS的方式,但是存在一定的区别:

区别1:link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务;@import属于CSS范畴,只能加载CSS。

区别2:link引用CSS时,在页面载入时同时加载;@import需要页面网页完全载入以后加载。

区别3:link是XHTML标签,无兼容问题;@import是在CSS2.1提出的,低版本的浏览器不支持。

区别4:link支持使用Javascript控制DOM去改变样式;而@import不支持。
综上所述,link的好处远远大于@import

以下这几种文件路径分别用在什么地方,代表什么意思?

css/a.css为相对路径,代表与当前目录下的css目录下的a.css文件
./css/a.css为相对路径,等价于css/a.css,其中./等价于当前目录
b.css为相对路径,代表当前路径下的b.css文件
../imgs/a.png为相对路径, 代表当前目录的上一级目录下的imgs目录下的a.png文件
/Users/hunger/project/css/a.css为绝对路径,代表本地文件夹下a.css文件地址
/static/css/a.css为网站路径,当前服务器根目录下的/static/css的a.css文件
http://cdn.jirengu.com/kejian1/8-1.png为网站路径,http://cdn.jirengu.com/kejian1/8-1.png网络路径下的文件

如果我想在js.jirengu.com上展示一个图片,需要怎么操作?

  1. 把本地图片上传至某网站(图床),生成一个线上地址,然后在js.jirengu.com中加载
  2. 在本地打开服务器,通过localhost加载这个图片。再将图片放在js.jirengu.com(自己测试时可这样使用)

列出5条以上html和 css 的书写规范:

html

  • 一定要闭合HTML标签
  • 声明正确的文档类型(DocType)
  • 不要使用内联样式
  • 使用小写的标签名
  • 同一页面,应避免使用相同的 name 与 id重名
  • 标签使用必须符合标签嵌套规则

css

  • 使用 4 个空格做为一个缩进层级,不允许使用 2 个空格 或 tab 字-
    符。
  • 选择器 与 { 之间必须包含空格
  • 属性名 与之后的 : 之间不允许包含空格, : 与 属性值 之间必须包含空格
  • 列表型属性值 书写在单行时,, 后必须跟一个空格
  • 每行不得超过 120 个字符,除非单行不可分割
  • 对于超长的样式,在样式值的 空格 处或 , 后换行,建议按逻辑分组
  • 当一个 rule 包含多个 selector 时,每个选择器声明必须独占一行 >、+、~ 选择器的两边各保留一个空格
  • 属性选择器中的值必须用双引号包围
  • 属性定义必须另起一行
  • 属性定义后必须以分号结尾
  • 如无必要,不得为 id、class 选择器添加类型选择器进行限定
    还有一个更健全的css规范,可自行查阅

截图介绍 chrome 开发者工具的功能区

chrome开发者工具
  1. Elements:查找网页源代码HTML中的任一元素,手动修改任一元素的属性和样式且能实时在浏览器里面得到反馈。
  2. Console:记录开发者开发过程中的日志信息,且可以作为与JS进行交互的命令行Shell。
  3. Sources:断点调试JS。
  4. Network:从发起网页页面请求Request后分析HTTP请求后得到的各个请求资源信息(包括状态、资源类型、大小、所用时间等),可以根据这个进行网络性能优化。
  5. Timeline:记录并分析在网站的生命周期内所发生的各类事件,以此可以提高网页的运行时间的性能。
  6. Profiles:如果你需要Timeline所能提供的更多信息时,可以尝试一下Profiles,比如记录JS CPU执行时间细节、显示JS对象和相关的DOM节点的内存消耗、记录内存的分配细节。
  7. Application:记录网站加载的所有资源信息,包括存储数据(Local Storage、Session Storage、IndexedDB、Web SQL、Cookies)、缓存数据、字体、图片、脚本、样式表等。
  8. Security:判断当前网页是否安全。
  9. Audits:对当前网页进行网络利用情况、网页性能方面的诊断,并给出一些优化建议。比如列出所有没有用到的CSS文件等。

web开发调试用的最多的就是Elements、Console、Sources、Network

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,831评论 1 92
  • 知识点导航 一、CSS初步认识<p> CSS整体感知 css 是 cascading style sheet 层叠...
    lanvy阅读 423评论 0 2
  • 转载请声明 原文链接地址 关注公众号获取更多资讯 第一部分 HTML 第一章 职业规划和前景 职业方向规划定位...
    前端进阶之旅阅读 16,645评论 32 459
  • 记得我第一次讲王小波的《一只特立独行的猪》,备课的时候心潮澎湃,心想如何让这篇文章打破学生一潭死水的生活。讲...
    关念阅读 30,065评论 27 77
  • 到部室工作快一个月了,还没开始工作就去学习了,回来还没理清工作内容就要背题准备竞赛,把工作一再向后压缩,很焦...
    朱明君阅读 196评论 0 0