类选择器和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)的更多相关文章

  1. Matplotlib数据可视化(3):文本与轴

      在一幅图表中,文本.坐标轴和图像的是信息传递的核心,对着三者的设置是作图这最为关心的内容,在上一篇博客中虽然列举了一些设置方法,但没有进行深入介绍,本文以围绕如何对文本和坐标轴进行设置展开(对图像 ...

  2. CSS的未来

    仅供参考 前言 完成<CSS核心技术与实战>这本书,已有一个多月了,而这篇文章原本是打算写在那本书里面的,但本章讲解的内容,毕竟属于CSS未来的范畴,而这一切都还不能够确定下来,所以这一章 ...

  3. 前端极易被误导的css选择器权重计算及css内联样式的妙用技巧

    记得大学时候,专业课的网页设计书籍里面讲过css选择器权重的计算:id是100,class是10,html标签是5等等,然后全部加起来的和进行比较... 我只想说:真是误人子弟,害人不浅! 最近,在前 ...

  4. 前端css兼容性与易混淆的点

    一.常用的骨灰级清除浮动 .clearfix:after { content: "."; display: block; height:; clear: both; visibil ...

  5. 理解CSS外边距margin

    前面的话   margin是盒模型几个属性中一个非常特殊的属性.简单举几个例子:只有margin不显示当前元素背景,只有margin可以设置为负值,margin和宽高支持auto,以及margin具有 ...

  6. 理解CSS视觉格式化

    前面的话   CSS视觉格式化这个词可能比较陌生,但说起盒模型可能就恍然大悟了.实际上,盒模型只是CSS视觉格式化的一部分.视觉格式化分为块级和行内两种处理方式.理解视觉格式化,可以确定得到的效果是应 ...

  7. 谈谈一些有趣的CSS题目(十二)-- 你该知道的字体 font-family

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  8. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

  9. 谈谈一些有趣的CSS题目(十一)-- reset.css 知多少?

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  10. 梅须逊雪三分白,雪却输梅一段香——CSS动画与JavaScript动画

    CSS动画并不是绝对比JavaScript动画性能更优越,开源动画库Velocity.js等就展现了强劲的性能. 一.两者的主要区别 先开门见山的说说两者之间的区别. 1)CSS动画: 基于CSS的动 ...

随机推荐

  1. 在Centos 7上安装配置 Apche Kafka 分布式消息系统集群

    Apache Kafka是一种颇受欢迎的分布式消息代理系统,旨在有效地处理大量的实时数据.Kafka集群不仅具有高度可扩展性和容错性,而且与其他消息代理(如ActiveMQ和RabbitMQ)相比,还 ...

  2. Nginx在windows2003下的使用 PHP

    nginx真正能够发挥其良好的负载能力的,是在linux下. 我们在windows下搭建好环境,测试开发使用.强烈建议在linux下开发的. ---- 下载nginx 访问www.nginx.org, ...

  3. shell脚本学习笔记 (流编辑器sed)

    sed意为流编辑器(Stream Editor),在Shell脚本和Makefile中作为过滤器使用很普遍,也就是把前一个程序的输出引入sed的输入,经过一系列编辑命令转换为另一种格式输出. sed不 ...

  4. Bootstrp--一个导航面板切换的实用例子

    <!--导航区开始--> <ul class="nav nav-tabs nav-stacked" role="tablist"> &l ...

  5. Bootstrap学习速查表(一) 理论基础

    参考网站http://www.bootcss.com/ 第一步,起步,引入基本样式 <!-- 新 Bootstrap 核心 CSS 文件 --> <link rel="st ...

  6. Dell 刀片服务器CentOS6.5mini开机20~30分钟宕机

    今天查看系统日志发现大量的nf_conntrack: table full, dropping packet. 错误 cat /var/log/messages | moreJun  7 09:52: ...

  7. A charge WIFI point base on airbase-ng+dhcp+lamp+wiwiz

    Make wifi as a hot point Make a script echo $0 $1 case $1 in "start") sleep 1 ifconfig wla ...

  8. System.DateTime.Now.ToString()的一些用法

    日期处理函数    //2007年4月24日    this.TextBox6.Text = System.DateTime.Now.ToString("D");    //200 ...

  9. Navicat Premium创建事件计划调用MySql存储过程

    1.检查事件计划,操作:工具——命令行界面——执行命令 show variables like '%event_scheduler%'; (分号不能丢)—— event_scheduler  ON 表 ...

  10. Angular入门(二) 服务

    目的:为了不再把相同的代码复制一遍又一遍,我们要创建一个单一的可复用的数据服务,并且把它注入到需要它的那些组件中. ※  文件命名约定:服务名称的小写形式(基本名),加上.service后缀,如果服务 ...