css(4)
类选择器和id选择器都有父子选择器。
在css文件中国,有时候为了简化样式,可以把相同的样式拿出来放在一起。
display:inline
display:block
行内元素里只能放行内元素,而块内元素内部可以放行内元素和块内元素。
清除掉li中文字前的点,可以使用list-style-type:none来搞定。
还有浮动。
标准流:写在前面出现在前面,写在后面的元素出现在后面。
盒子模型
每个html元素都可以看做一个盒子。那么它们就有四个东西:
从元素看,margin-top,从div看就是padding-top.
使用padding可能会将盒子撑大,而使用margin不当可能使元素被挤出来。
优先选择margin.
css核心-浮动
浮动:元素默认是纵向排列,但是当我们需要横向排列时,使用float:left
当某些元素过大时会卡住其他div。
你可以这么理解浮动:如果一个元素向右/左浮动则:
1.它本身会尽可能向右/左移动,直到碰到边框或者别的浮动元素,特别强调浮动对块内元素和行内元素都生效
2.元素向右/左浮动,就相当于让出自己的左/右边,这就解释了笔记css(3)中截图中出现的问题。
补充:html中可以使用<pre></pre>保留文本中的原有格式。
浮动-清除浮动
如果不希望别的元素在某个元素的左边或者右边,可以使用清除浮动的方法clear:right;clear:left;clear:both.
css核心内容-浮动
css(四大)核心内容-定位
css定位属性允许你对元素进行定位,position属性。
定位-基本概念
static(默认值):元素框正常生成。块内元素生成一个矩形框,作为文档流/标准流的一部分,行内元素则会创建一个或多个行框,置于其父元素中。
元素仍保持其未定位前的形状,它原本所占空间仍保留,从这一角度看,好像该元素仍然在文本流/标准流。
其实相对是相对原有的空间的移动。
relative:元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。从这一角度看。
absolute(绝对定位):absolute定位是对离自己最近的那个非标准流盒子而言的。
css的定位有以下几种:
1.static定位
这个是默认的方式.
2.relative定位(相对定位)
元素框偏移某个位置(left和top),元素本身形状不变化,它原本所占有的空间仍然保留。
3.绝对定位
元素从原来的位置脱离,并让出自己的空间,后面的元素就会占有让出的空间。
特别说明 1.relative的参照点是它原来的位置,进行再定位。
2.absolute定位是离自己最近的那个非标准流。
绝对布局的代码展示如下所示:
<!DOCTYPE html>
<html>
<head>
<title>relative.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> <link href="relative.css" type="text/css" rel="stylesheet"> </head> <body>
<div class="s1">内容1</div>
<div class="s1">内容3</div>
<div class="s1">内容4</div>
<div class="s2">abc<div id="special" class="s1">内容2</div></div>
</body>
</html>
css文件如下所示:
.s1{
width:100px;
height:60px;
background-color:gray;
float:left;
margin-left:4px;
} #special{
/*position:relative;*//*这里我们使用了相对定位*/
position:absolute;
left:40px;/*在原来的位置,向左移动多少(如果希望向左边移动,则值就是负数)*/
top:100px;/*在原来的位置,向下移动大小(如果希望向上移动,则值是负数)*/
/*坐标体系是原来的位置*/
/*相对原来的位置移动*/
} .s2{
position:relative;
left:200px;
top:100px;
width:300px;
height:100px;
float:left;
background-color:green;
}
运行结果如下所示:
如果定位是static,会发现left(margin-left),right(margin-right)没有作用。
对static而言,left和right属性是不生效的,但是对于absolute和relative是生效的。
fixed:和absolute很像,元素框表现类似于absolute,不过其包含块是元素框本身。
fixed只认body。
css(4)的更多相关文章
- Matplotlib数据可视化(3):文本与轴
在一幅图表中,文本.坐标轴和图像的是信息传递的核心,对着三者的设置是作图这最为关心的内容,在上一篇博客中虽然列举了一些设置方法,但没有进行深入介绍,本文以围绕如何对文本和坐标轴进行设置展开(对图像 ...
- CSS的未来
仅供参考 前言 完成<CSS核心技术与实战>这本书,已有一个多月了,而这篇文章原本是打算写在那本书里面的,但本章讲解的内容,毕竟属于CSS未来的范畴,而这一切都还不能够确定下来,所以这一章 ...
- 前端极易被误导的css选择器权重计算及css内联样式的妙用技巧
记得大学时候,专业课的网页设计书籍里面讲过css选择器权重的计算:id是100,class是10,html标签是5等等,然后全部加起来的和进行比较... 我只想说:真是误人子弟,害人不浅! 最近,在前 ...
- 前端css兼容性与易混淆的点
一.常用的骨灰级清除浮动 .clearfix:after { content: "."; display: block; height:; clear: both; visibil ...
- 理解CSS外边距margin
前面的话 margin是盒模型几个属性中一个非常特殊的属性.简单举几个例子:只有margin不显示当前元素背景,只有margin可以设置为负值,margin和宽高支持auto,以及margin具有 ...
- 理解CSS视觉格式化
前面的话 CSS视觉格式化这个词可能比较陌生,但说起盒模型可能就恍然大悟了.实际上,盒模型只是CSS视觉格式化的一部分.视觉格式化分为块级和行内两种处理方式.理解视觉格式化,可以确定得到的效果是应 ...
- 谈谈一些有趣的CSS题目(十二)-- 你该知道的字体 font-family
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...
- 谈谈一些有趣的CSS题目(十一)-- reset.css 知多少?
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- 梅须逊雪三分白,雪却输梅一段香——CSS动画与JavaScript动画
CSS动画并不是绝对比JavaScript动画性能更优越,开源动画库Velocity.js等就展现了强劲的性能. 一.两者的主要区别 先开门见山的说说两者之间的区别. 1)CSS动画: 基于CSS的动 ...
随机推荐
- MySQL的备份与恢复具体解释
MySQL数据备份 在mySQL里面,有逻辑备份和物理备份.逻辑备份最大长处是对于各种存储引擎,都能够使用相同的方法来备份. 而物理备份则不同.不同的存储引擎有着不同的备份方法. 逻辑备份与恢复 备份 ...
- 一些绕过waf的笔记
转自:http://fuck.0day5.com/archives/622.html 一.各种编码绕过1. ? 1 2 ?id=1 union select pass from admin limit ...
- kill -signal
1. SIGHUP 启动被终止的进程,可让该PID重新读取配置文件,类似于重启服务 对应的数字为1 9.SIGTERM 以正常的结束进程来终止进程 15.SIGSTOP 暂停一个进程相当于crtl+z
- HDU 4746 Mophues (莫比乌斯反演应用)
Mophues Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 327670/327670 K (Java/Others) Total ...
- Shell脚本之:数组
bash支持一维数组,并且没有限定数组的大小,数组元素的下标由0开始编号. 定义数组 在Shell中,用括号来表示数组,数组元素用“空格”符号分割开.定义数组的一般形式为: array_name=(v ...
- wait和notify实现的生产者消费者线程交互
public class ProductTest { public static void main(String args[]) { Repertory repertory=new Repertor ...
- Android日期对话框NumberPicker的使用方法教程
NumberPicker是Android3.0之后引入的一个控件.NumberPicker 是用于选择一组提前定义好数字的控件.比方时间hour的选择仅仅有0-23有效,则能够通过setMinValu ...
- 3、C++新的关键字
C++ 添加了一些全新的关键字. 1.new new 来进行动态内存的分配,而delect 则是进行内存的释放, 申请的方式: 变量申请: int *p = new int; // 申 ...
- Oracle的主键约束、唯一约束与外键约束
http://www.shangxueba.com/jingyan/122163.html主键: 1.主键约束: 一个表只能有一个主键约束.主键可以是单个字段,也可以是多个字段.无论是哪种情况,其所 ...
- Javascript模式(一) 单例模式
function A(){ // 存储实例对象 var instance; // 重写构造函数,只返回闭包内的局部变量instance A = function(){ return instance; ...