新手前端笔记之--初识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主要有三类:固定定位 ...
随机推荐
- WIN10远程桌面连接--“出现身份验证错误。要求的函数不支持”
最近WIN10升级补丁后发现远程桌面无法连接了,报“出现身份验证错误.要求的函数不支持”的错误: 解决办法: 第一种,配置本地自己的电脑,开始菜单->搜索gpedit.msc并打开 打开配置 ...
- vue20 父子组件数据交互
子组件使用父组件数据 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- JavaWeb简单介绍
服务器端编程 技术种类 Servlet JSP Struts Spring Hibernate EJB Web Service Web服务器 IIS Apache Tomcat (提供对JSP和Ser ...
- style="background-image: url(__HOMEPAGE__/views/IMJ2V2/images/banner2.jpg)"
style="background-image: url(__HOMEPAGE__/views/IMJ2V2/images/banner2.jpg)" 一.问题 backgroun ...
- assert 的理解
assert 可以实现如下功能: 保证参数之间的大小等约束关系: 函数执行过程中得到的中间结果是否符合预期: def gen_batch(batch_size, skip_window, num_sk ...
- BZOJ 4003 左偏树
思路: 用到了左偏树合并复杂度是logn的性质 一开始先BFS一遍 打标记的左偏树 //By SiriusRen #include <cstdio> #include <cstrin ...
- js笔记3
1字符串 replace("","")替换,前面为要替换什么,后面为替换的内容只能替换一个 2DOM 时间三要素 事件源 谁身上发生的行为 事件 单机 双击 事 ...
- shell的结构化命令
shell在逻辑流程控制这里会根据设置的变量值的条件或其他命令的结果跳过一些命令或者循环执行的这些命令.这些命令通常称为结构化命令 1.if-then语句介绍 基本格式 if command then ...
- thinkphp3.2.3 隐藏url上home模块以及index.php文件
1.去掉Home index.php 添加如下代码 define('BIND_MODULE', 'Home'); 这时就隐藏了url中的Home 2.去掉index.php thinkphp3.2.3 ...
- NOIP2009 最优贸易(BFS)
本题正解是tarjan.我没有去写 之前的代码是错误的不好意思,因为数据太弱一直没有发现. 相同还是两遍bfs,一次正向,一次反向.在正向的时候我们求出从起点走到各个点的最小值.在反向的时候求出从终点 ...