任务六之CSS、 chrome开发者工具、 文件路径

CSS是什么

css全称是 Cascading Style Sheets,层叠样式表

@charset "utf-8";
h1 {
  color: red;
  font-size: 20px;
  /*这是注释*/
}
a:hover{
  color: red;
}```
![8-1.png](http://upload-images.jianshu.io/upload_images/1376285-190007ac1af38b03.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
#如何在页面应用css
1. 内连样式 (这种写法基本在工作中杜绝,除非逼不得已)
```HTML
<h1 style="color: red; font-size: 20px;"></h1>
  1. 内部样式 (稍微靠谱 但是现在vue项目又用上了)
<style type="text/css">
 h1 {
   color: red;
   font-size: 20px;
 }
</style>
<h1>饥人谷</h1>
  1. 外部样式
  • 写法一 link 标签
<head> 
  <link rel="stylesheet" type="text/css" href="index.css">
</head>
  • 写法二 import 导入CSS
<style>
  @import url("hello.css");
  @import "world.css";
</style>
  1. 其他
    浏览器有自己的默认样式

link与@import的区别
本质上,这两种方式都是为了加载CSS文件,但还是存在着细微的差别

  • 1.link属于XHTML标签,
    而@import完全是CSS提供的一种方式。
    link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS了。
  • 2.加载顺序的差别。
    link引用的CSS会同时被加载,
    @import引用的CSS会等到页面全部被下载完再被加载。
    所以有时候浏览@import加载CSS的页面时性能较差
  • 3.兼容性的差别。
    @import是CSS2.1提出的所以老的浏览器不支持,只有在IE5以上的才能识别,
    link标签无此问题
  • 4.使用dom控制样式时的差别。
    当使用javascript控制dom去改变样式的时候,只能使用link标签,
    因为@import不是dom可以控制的。

认识开发者工具

右键检查 或者 mac快捷键 option + command + J

tab简介.png
html与style增删改调试.png
computed.png
console.png
source.png

network.png

以上介绍是开发式经常使用的
其他几个tab都跟性能优化有关,要想更深刻了解开发者工具,可以点此跳转

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

  • 相对路径
    • 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 在当前系统的绝对路径
  • 网站路径

书写规范

  • 语法不区分大小写,但建议统一使用小写
  • 不使用内联的style属性定义样式
  • id和class使用有意义的单词,分隔符建议使用-
  • 有可能就是用缩写
  • 属性值是0的省略单位
  • 块内容缩进
  • 属性名冒号后面添加一个空格

css布局思想

摘抄自饥人谷 --- 方方老师课堂笔记

CSS 杂谈

Normal Flow

  1. 内联元素 span 从左到右排列,宽度不够就换行
  2. 块级元素 div 从上到下排列,每个元素另起一行
  3. inline block
  4. display table
  5. display list item
  6. display flex

宽高如何确定

  1. 内联元素
    占地宽:内容、padding、margin
    占地高:line height、font size
  2. block 元素
    内容区宽:爸爸的内容区域的宽度 - 自己的左右边框 - 自己的左右 margin 2. 可以通过 white-space 控制是否换行
    内容高度:它内部文档流中元素的高度的总和
  3. inline-block 元素
    宽:1. 可以设置 width 2. 内容决定宽度 3. 可以通过 white-space 控制是否换行
    高:line height、font size 它内部文档流中元素的高度的总和

居中(水平、垂直)

文档流中的元素

水平

  1. 内联:在爸爸身上加 ta:c
  2. 块级:
    1. 固定宽度的div
      1. margin-left: auto
      2. margin-right: auto
    2. 不固定宽度的 div
      1. margin: 0 100px;

垂直

  1. 内联:
    1. 在爸爸上加 line-height
    2. 在爸爸上加 padding: 10px 0
    3. 在爸爸上加 line-height 和 padding: 10px 0
  2. 块级元素
    1. 在爸爸上加 padding: 10px 0

不在文档流中的元素

浮动元素居中?

不可能

绝对定位

top: 50%; left: 50%; margin-left: - 宽度的一半; margin-top: - 高度的一半
top: 50%; left: 50%; transform: translate(-50%,-50%) CSS 3

兼容性最好的垂直居中:table

布局(一栏、两栏、三栏)

IE: float
非IE: flex

面试技巧:具体化、分情况讨论

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

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,680评论 1 92
  • 转载请声明 原文链接地址 关注公众号获取更多资讯 第一部分 HTML 第一章 职业规划和前景 职业方向规划定位...
    前端进阶之旅阅读 16,684评论 32 459
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 5,774评论 0 2
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 6,826评论 0 11
  • 1、extension [ɪk'stɛnʃən] ——扩展可以将某一类相关的代码写在一起,体现Swift语言特点...
    蜗牛锅阅读 1,287评论 0 0