新手前端笔记之--初识css
css样式表是为了容纳与html文档分离出来的样式属性而产生的,所以她理所当然的包含两个部分:1.样式的表示,使用{属性1:属性值;属性2:属性值;...},2.样式与标签的对应(如何找的对应标签),使用各种选择器。下面将这两部分分别进行分析。
一、选择器的分类和应用原则:
关于选择器的总结,已经有很多,推荐博文:十分钟搞定css选择器,里面的总结已经非常全面,但怎样使用还是应该注意优先级(这是由于层叠引起的,因为css允许为一个标签多次设定样式,所以就要确定到底是哪个样式被最终使用)和应用原则,推荐另一篇文章:css选择器,优先级和匹配原理。还有一个需要体会的原则是渐进增强原则,这是因为各种浏览器对css的支持程度不同,为了满足不同用户都可以体验到满意的效果。
二、样式又可以分为具体样式(指定每一部分自身应该显示的样式,如边框、背景等,其中最需理解的就是盒模型)和定位(指定元素的位置)。
1、自身样式包括:背景、字体、文本、边框、链接、列表、表格、轮廓,多列,变换,过渡,动画,最后是"盒子"。
前几个都较容易理解,具体内容在w3school手册中有介绍,需要记忆即可(注意背景图片百分比定位的具体操作)。
而对盒子的理解首先应该是:它是一个装着珍贵物品的礼物盒,在最里面是物品(content),外面有一层柔软的布将它与坚硬外壳隔离(padding和border),这个盒子还需要和别的物件分开(margin)。所以这个盒子所占据的空间就是(margin-left+border-left+padding-left+content+padding-right+border-right+margin-right,上下计算同理),这样复杂的写只是想表明左右的大小不一定相等。
有了上面的理解,现在来想一个实际的问题:如果在这个盒子里装了一个大于盒子的物品会出现什么情况呢?因为这个物品足够这珍贵,所以默认情况下它会溢出盒子的约束(ie中甚至可以将盒子“撑大”)。为了保持布局,你可以使用overflow属性对其进行限制(修剪多余部分hidden,出现滚动条scroll,自动识别auto),clip属性也可以用来对元素进行剪切,但有一定条件(该元素设置position为absolute)。
在html中,可以说万物皆盒子。但盒子又可以分为两种:行内(框?盒)和行外(框?盒)。内外之分在于行,前者被局限于行之中,可以左右扩张,但只能通过设置行高line-height来上下扩展;而后者可以随心上下左右扩展。(图像属于行内元素)。display属性提供两者之间的转化方式,甚至将环内元素转化为特殊的行外元素,如列表和表格,详见手册。
2、有了以上的盒子概念,就可以来进行定位了。记得以前看到过一些抽象画,就是一些方块的格子在一幅图片上进行排布,网页设计者就是在屏幕上进行这种艺术创作,但更准求精准的排列关系而已。其实浏览器默认就有一种排列方式—>由上到下,由左到右的排列这些行内和行外框(标准流)。为了使盒子可以以你的医院进行排列,css提供了定位元素,分为两种方式:position和float。
float是浮动定位方式,先浮后动,浮是指想着屏幕冲着脸的方向上浮,然后向左或右移动,元素不占据标准流中位置,所以可以覆盖之后未浮动的元素。这是你可以消除它对下一个元素的影响(清除浮动),即使用clear属性
position是一种“相对”定位方式,指的是它的定位依据某一特定元素来确定(有浮的特性),有relative(相对于标准流中的自己,原位置和框的性质保留),absolute(相对于包含它的最近定位元素,位置不留,一律变成块框),fixed(相对于浏览器视窗)
还有四种定位,top,right,bottom,left,它们必须在设定position定位之后才能起作用。
新手前端笔记之--初识css的更多相关文章
- 新手前端笔记之--初识html标签
接触前端(好大气的名字啊)已经一个多月了,看了很多视频和博客,有了一定的感性认识,但还是需要总结一下以便系统化所学习的知识,就从html标签开始吧.关于标签,谈论最多的就是简洁和语义化.简洁指html ...
- 新手前端笔记之--css盒子
css盒子就是它的盒模型,所有css的布局都是以此作为基础的,很有必要来详细记录一下. 1.盒子的尺寸就是margin+padding+border+content的总和,这很好理解,但令人迷惑的可能 ...
- 前端笔记 (2.CSS)
知识点借鉴于慕课网,菜鸟教程和w3shool CSS方面: CSS全称为“层叠样式表”,它主要是用于定义HTML内容在浏览器内的显示样式,如文字大小.颜色.字体加粗等. 使用CSS样式的一个好处是通过 ...
- 前端笔记二:CSS盒模型
1.标准模型和IE模型 2.标准模型和IE模型的区别 标准模型的height和width只是content的: IE模型的height和width是包含padding和border的 3.CSS如何设 ...
- 前端笔记(关于css盒模型知识整理)
我以前整理的文章可能也不是特别深入.所以现在开始尝试即使多花点时间收集整理,也不只发浅层知识,这样对技术的深入理解是很有帮助的. 废话不多说,我们现在开始. 说到css盒模型,这是大多面试基础中会经常 ...
- 2.前端笔记之css
title: 1.前端笔记之CSS date: 2016-04-05 23:05:51 tags: 前端 categories: w3c --- 作者:刘耀 **出处:http://www.liuya ...
- 1.前端笔记之html
title: 1.前端笔记之HTML date: 2016-04-04 23:21:52 tags: Python categories: Python --- 作者:刘耀 **出处:http://w ...
- 写给后端的前端笔记:浮动(float)布局
写给后端的前端笔记:浮动(float)布局 这篇文章主要面向后端人员,对前端有深刻了解的各位不喜勿喷. 起因 前一阵子我一个后端的伙伴问我,"前端的左飘怎么做?",我立马就懵了,& ...
- 写给后端的前端笔记:定位(position)
写给后端的前端笔记:定位(position) 既然都写了一篇浮动布局,干脆把定位(position)也写了,这样后端基本上能学会css布局了. 类别 我们所说的定位position主要有三类:固定定位 ...
随机推荐
- windows server,无桌面服务器 , 批处理更改时区
windows server,无桌面服务器 , 批处理更改时区 time /t cmd.exe /c Control.exe TIMEDATE.CPL,,/Z "China Standard ...
- vim插件之marks
最近在看源码的过程中,发现一点很不方便的地方,就是当我在几个相关的类来回跳转的时候,之前定位的关键代码很容易找不到,结果进程需要重复查找关键点.虽然当时想到了可以通过marks来标志,但是,因为mar ...
- 如何测试WCF Rest
使用SoapUI 1.新建一个rest项目 2.双击上图中的Request1 查询的时候,Method选择post resource的地方要调整到对应的方法 查询的内容是用json格式发送 查询的的结 ...
- oracle中查询表的信息,包括表名,字段名,字段类型,主键,外键唯一性约束信息
来源于网上整理 总结了一下oracle中查询表的信息,包括表名,字段名,字段类型,主键,外键唯一性约束信息,索引信息查询SQL如下,希望对大家有所帮助: 1.查询出所有的用户表select * fro ...
- C/C++(C++封装)
封装 当单一变量无法完成描述需求的时候,结构体类型解决了这一问题.可以将多个类型打包成一体,形成新的类型.这是 c 语言中封装的概念.但是,新类型并不包含,对数据类的操作.所的有操作都是通过函数的方式 ...
- vuex 快速入门( 基于vue2.0,vue1.0未知可否)
1.原理概述 2.用户登录例子解析: 由上图可以看到: 1.组件的数据是username,我们把它以name放在state中: 2.更改name发生在mutations的回调里,事件名字是showUs ...
- tensorflow学习之路---解决过拟合
''' 思路:1.调用数据集 2.定义用来实现神经元功能的函数(包括解决过拟合) 3.定义输入和输出的数据4.定义隐藏层(函数)和输出层(函数) 5.分析误差和优化数据(改变权重)6.执行神经网络 ' ...
- 使用LVS 实现负载均衡的原理。
LVS 负载均衡 负载均衡集群是 Load Balance 集群.是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端提供服务的一种方式.常用 的负载均衡. 开源软件有Nginx. ...
- VM虚拟机全屏显示
在虚拟机中使用全屏界面会有更强的用户体验.在编辑该文章的时候就是在使用虚拟机windows2008 R2系统.我的笔记本是苹果双系统.虚拟机安装在win7 64位系统下 1.首先查看主机的屏幕分辨率 ...
- 获取个人借阅信息---图书馆client
在上一篇利用jsoup解析个人信息----图书馆client,获得个人基本信息后.便有了进一步的需求:获取当前借阅的具体信息 获取的方法还是一样的.利用jsoup解析借阅信息页面,获得所需数据,封装成 ...