前端基础CSS(3)

 

一、文本属性和字体属性(常用的)

1、文本属性

  text-align:left|right|center|justify(两端对齐,只适用于英文);   /*对齐方式*/

  color:色值;   /*文本颜色*/

  text-indent:2em;  /*首行缩进,建议单位用em*/

  text-decoration:none|underline|overline|line-through|inherit;

  line-height:高度值;

2、字体属性

  font-weight:normal|bold|border|lighter|100~900|inherit;  /*100~300没区别*/

  font-family:字体;

  a、网页中不是所有字体都能显示,因为这个字体要看用户的电脑里面装没装,比如你设置:font-family:”华文彩云”;如果用户电脑里面没有这个字体,那么就会变成宋体 ;

    b、为了防止用户电脑里面没有你设置的那个字体,我们通常写多个用逗号隔开的备选字体,如:font-family: "Times New Roman","微软雅黑";备选字体可以有无数个,默认显示第一个,没有安装第一个就显示第二个,以此类推,都没装就显示宋体 ;

    c、我们要将英语字体,放在最前面,这样所有的中文,就不能匹配英语字体,就自动的变为后面的中文字体 ;

    d、所有的中文字体,都有英语别名,微软雅黑的英语别名是:”Microsoft YaHei”,宋体的英语别名是:”SimSun”;

    e、font属性能够将font-size、line-height、font-family合三为一: font:12px/30px "Times New Roman","Microsoft YaHei","SimSun";

    f、行高可以用百分比,表示字号的百分之多少,也可以用em单位,表示字号的几倍。一般来说,都是大于100%的,因为行高一定要大于字号。例如:

    font:12px/200% “宋体”;或者font:12px/2em “宋体”;等价于 font:12px/24px “宋体”;反过来,比如: font:16px/48px “宋体”;等价于 font:16px/300% “宋体”;或者font:16px/3em “宋体”;

二、background

1、颜色表示法

  颜色一共有三种表示方法:单词、rgb表示法、十六进制表示法。

  rgb表示法:

  rgb:红色 绿色 蓝色 三原色。

  光学显示器,每个像素都是由三原色的发光原件组成的,靠明亮度不同调成不同的颜色的。

  用法:rgb(111,234,123);  r、g、b的每个值的取值范围0~255。

  十六进制表示法:

  所有用#开头的值,都是十六进制的。

  用法:#a0a0a0;    #112233;可以简写成#123;

2、background-color 属性表示设置背景颜色

  用法:

3、background-image 表示设置该元素的背景图片

  用法:background-image:url('paper.gif');

4、background-repeat 表示设置该元素的平铺方式

  用法:background-repeat:repeat(默认)|repeat-x|repeat-y|no-repeat|inherit;

5、background-position 表示设置背景图片的位置

  background-position: x% y%|Xpx Ypx;   /*第一个值是水平位置,第二个值是垂直位置*/

6、图片精灵技术

  CSS雪碧,即CSS Sprite,也有人叫它CSS精灵,是一种CSS图像合并技术,该方法是将小图标和背景图像合并到一张图片上,然后利用css的背景定位来显示需要显示的图片部分。

CSS 精灵图应用原理:

  只有一张大的合并图, 每个小图标节点如何显示单独的小图标呢?其实就是截取大图一部分显示,而这部分就是一个小图标。

使用精灵图的好处:

  1)利用CSS Sprites能很好地减少网页的http请求,从而大大的提高页面的性能,这也是CSS Sprites最大的优点,也是其被广泛传播和应用的主要原因;

  2)CSS Sprites能减少图片的字节,曾经比较过多次3张图片合并成1张图片的字节总是小于这3张图片的字节总和;

  3)解决了网页设计师在图片命名上的困扰,只需对一张集合的图片上命名就可以了,不需要对每一个小元素进行命名,从而提高了网页的制作效率;

  4)更换风格方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。维护起来更加方便;

使用精灵图的不足:

  1)CSS精灵图的最大问题是内存使用;

  2)拼图维护比较麻烦;

  3)使CSS的编写变得困难;

  4)CSS精灵图调用的图片不能被打印;

7、应用:我们可以使用background综合属性制作通天banner,什么是通天banner呢,就是一般我们电脑的屏幕都是1439,但是设计师给我们的banner图都会比这个大,那么我们可以此属性制作通天banner,如下:background: red url(images/banner.jpg) no-repeat center top;

三、定位

  定位有三种:(1) 相对定位、(2) 绝对定位、(3) 固定定位

1、相对定位(相对于自己原来的位置定位)

现象和使用:

    a、如果对当前元素仅仅设置了相对定位,那么与标准流的盒子没什么区别;

    b、设置相对定位之后,我们才可以使用四个方向的属性: top、bottom、left、right;

  特性:

    a、不脱离标准流;

    b、形影分离;

    c、老家留坑,就是原来的位置还在(占着茅房不拉屎,恶心人);

  注意:所以说相对定位在页面中没有什么太大的作用,影响我们页面的布局,我们不要使用相对定位来做压盖效果。

  用途:

    a、微调元素位置;

    b、做绝对定位的参考(父相子绝),绝对定位中会介绍此内容(常用);

  参考点:

    自己原来的位置做参考点;

2、绝对定位

  特性:

    a、脱离标准流;

    b、做遮盖效果,提升了层级,设置绝对定位之后,不区分行内元素和块级元素,都能设置宽高;

  参考点(*****):

  (1)单独一个绝对定位的盒子:

    a、当我使用top属性描述的时候,是以页面的左上角(跟浏览器的左上角区分)为参考点来调整位置;

    b、当我使用bottom属性描述的时候,是以首屏页面左下角为参考点来调整位置;

  (2)以父辈盒子作为参考点(常用):

    a、父辈元素设置相对定位,子元素设置绝对定位,那么会以父辈元素左上角为参考点,这个父辈元素不一定是爸爸,它也可以是爷爷,曾爷爷;

    b、如果父亲设置了定位,那么以父亲为参考点,那么如果父亲没有设置定位,那么以父辈元素设置定位的为参考点;

    c、不仅仅是父相子绝,父绝子绝和父固子绝都是以父辈元素为参考点;

  注意:父绝子绝,没有实战意义,做站的时候不会出现父绝子绝,因为绝对定位脱离标准流,影响页面的布局。相反,‘父相子绝’在我们页面布局中,是常用的布局方案,因为父亲设置相对定位,不脱离标准流,子元素设置绝对定位,仅仅的是在当前父辈元素内调整该元素的位置。

  还要注意,绝对定位的盒子无视父辈的padding。

  作用:页面布局常见的“父相子绝”,一定要会!!!

3、固定定位(固定当前的元素不会随着页面滚动而滚动)

  特性:

    a、脱标;

    b、遮盖;

    c、提升层级;

    d、固定不变;

  参考点:

    a、设置固定定位,用top描述,那么是以浏览器的左上角为参考点;

    b、如果用bottom描述,那么是以浏览器的左下角为参考点;

  作用:

    a、返回顶部;

    b、固定导航栏;

    c、小广告;

4、z-index

  这个东西非常简单,它有以下四大特性,每个特性你记住了,页面布局就不会出现找不到盒子的情况。

  a、z-index 值表示谁压着谁,数值大的压盖住数值小的;

  b、只有定位了的元素,才能有z-index,也就是说,不管相对定位,绝对定位,固定定位,都可以使用z-index,而浮动元素不能使用z-index;

  c、z-index值没有单位,就是一个正整数,默认的z-index值为0,如果大家都没有z-index值,或者z-index值一样,那么谁写在HTML后面,谁在上面压着别人。定位了的元素,永远压住没有定位的元素;

  d、从父现象:父亲怂了,儿子再牛逼也没用;

5、应用:绝对定位的盒子居中(当公式记下来!!!)

  position:absolute;

  left:50%;

  margin-left: -width/2;  /*即自身宽度的一半*/

前端CSS(3)的更多相关文章

  1. 前端CSS编程之道-LESS

    由于前端css编写繁琐,最近开始学习LESS,用LESS编写文件.less文件可以直接编译成我们要的.css文件 学习Less 我下面是我练习时的截图,希望小伙伴也能动手自己写一下,而不是复制粘贴模式 ...

  2. 扯一扯前端css的整体架构设计:(2)base基础类的那些事儿

    周一下午在实验室写了第一篇博文,有几个人捧场,那咱就得接着下去啊.然后我觉得现在写的内容更多的偏向于谈一下我对于前端css架构的理解和前端经验的一个小总结,所以就把标题里原来的[项目总结]给删掉了.但 ...

  3. Web前端-CSS必备知识点

    Web前端-CSS必备知识点 css基本内容,类选择符,id选择符,伪类,伪元素,结构,继承,特殊性,层叠,元素分类,颜色,长度,url,文本,字体,边框,块级元素,浮动元素,内联元素,定位. 链接: ...

  4. WEB前端 CSS(非布局)

    目录 WEB前端 CSS CSS引入方式 CSS结构 CSS选择器 直接选择器 组合选择器 分组选择器 也叫并集选择器 属性选择器 伪类选择器 伪元素选择器 CSS选择器是一个查找的过程,高效的查找影 ...

  5. 前端 CSS 目录

    前端 CSS 介绍 前端 CSS语法 前端 CSS 注释

  6. {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性  定位(position)z-index

    前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...

  7. 前端CSS - 相对定位,绝对定位,固定定位

    前端CSS - 相对定位,绝对定位,固定定位 1.1 相对定位 position:relative 相对定位,就是微调元素位置的.让元素相对自己原来的位置,进行位置的微调. 也就是说,如果一个盒子想进 ...

  8. 前端 CSS 继承性和层叠性

    CSS有两大特性:继承性和层叠性 前端 CSS的继承性 前端 CSS层叠性 CSS选择器优先级 前端 CSS 优先级 样式设置important

  9. day 45 前端CSS

      前端CSS   CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式 ...

  10. 前端——CSS选择器

    目录 前端CSS CSS三种引入方式 CSS标签选择器 基本选择器 1.元素选择器 2.类选择器 3.id选择器 4.通用选择器 组合选择器 1.后代选择器 空格 2.儿子选择器 > 3.毗邻选 ...

随机推荐

  1. JavaScript多态

    function Master(){ //给动物喂食 this.feed=function(animal,food){ window.alert(animal.constructor); docume ...

  2. jQuery Validate 插件为表单提供了强大的验证功能

    之前项目开发中,表单校验用的jQuery Validate 插件,这个插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的 ...

  3. resEdit

    resEdit:一个图形界面编辑工具,它不但可以用来编写程序所图形界面(如修改图标.菜单.鼠标.版本信息等),还支持了对exe.dll等执行文件内的资源(图标.菜单.鼠标指针.位图.版本信息)等进行修 ...

  4. django 模板中通过变量替代key取字典内容

    模板中通过变量替代key取字典内容 templatetags/├── get_item.py├── __init__.py ###get_item.py # coding=utf-8 from dja ...

  5. Mysql常用命令行大全(三)

    /**操作数据库*/ SHOW DATABASES; CREATE DATABASE db; SHOW DATABASES; DROP DATABASE db; /**操作表*/ USE  db; S ...

  6. sulime的必备插件

    常用插件 : SideBarEnhancements HTML-CSS-JS Prettify BracketHighlighter SublimeCodeIntel Emmet CTags Mark ...

  7. 三 Flask+ MySQL 数据库操作

    一: __init__.py作用: __init__.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件.通常__init__.py ...

  8. F - 棋盘问题

    F - 棋盘问题 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit Sta ...

  9. David Malan teaching CS75 lecture 9, Scalability

    https://youtu.be/-W9F__D3oY4 Storage PATA, SATA, SAS (15,000 rpm), SSD, RAID0 : striping, double thr ...

  10. day1 java基础回顾-内省

    为什么要学内省? 开发框架时,经常需要使用java对象的属性来封装程序的数据,每次都使用反射技术完成此类操作过于麻烦,所以sun公司开发了一套API,专门用于操作java对象的属性. 内省是用于操作j ...