css盒子就是它的盒模型,所有css的布局都是以此作为基础的,很有必要来详细记录一下。

  1、盒子的尺寸就是margin+padding+border+content的总和,这很好理解,但令人迷惑的可能就是四个顶角是怎样产生的,可以由两个例子来看一下:

 <div style="width:10px; height:10px; border:30px solid; border-color:#ff3300 #0000ff #339966 #00ff00;"></div>
<div style="width:10px; height:10px; border-width:20px 30px;border-style:solid; border-color:#ff3300 #0000ff #339966 #00ff00;"></div>

效果如图:。从这两幅图可以看出:四个顶角的矩形是由相邻两个边框各分一半形成的

  此时如果将某些边框的颜色设为背景色或者透明,则可以形成梯形;如果在将宽和高设为0,就可以产生三角形,

 <div style="width:10px;height:10px;border:15px solid #000; border-color:#f00 #fff #fff #fff;"></div>
<div style="width:0;height:0;border:15px solid #000; border-color:#f00 transparent transparent transparent;"></div>

效果如图:

  2、如果没有显式的设置盒子大小,其尺寸该怎样确定呢,还是看几个例子吧:

 <div style=" margin: 20px auto;width:300px; background: gray; padding: 10px;">
<p style=" background-color: Orange;">
上官云野</p>
</div>
<div style=" margin: 20px auto; width: 300px; background: gray; padding: 10px;">
<p style=" background-color: Orange; margin: 0 -20px;">
上官云野</p>
</div>
<div style=" margin: 20px auto; width: 300px; background: gray; padding: 10px;">
<p style=" background-color: Orange; width:100px">
上官云野上官云野</p>
</div>

效果如图:。由图可以看出:未设置的盒子的宽度由包含它的盒子确定,原则为填满包含盒子的content。而它的高由内含的盒子确定。

  3、有了以上两点知识就可以做一个圆角框了:

   <div style="width:500px">
<div style="border-bottom:3px solid #cc0000; border-top-color:#cc0000; border-left:3px dotted transparent;border-right:3px dotted transparent"></div>
<div style="padding:10px 20px; color:white; font-size:14px; background:#cc0000;">上官云野!</div>
<div style="border-top:3px solid #cc0000; border-bottom-color:#cccccc; border-left:3px dotted transparent;border-right:3px dotted transparent;"></div>
</div>

  附录:各种盒模型特点:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta http-equiv="Content-type" content="Text/html;charset=utf-8">
<style type="text/css">
table{
display:inline-block;
border-collapse:collapse;
width:50px;
} table, td
{
border: 1px solid blue;
}
td{width:15px;}
.li1 li{background-color:#ccc;display:inline-block;}
.li2{background-color:#ccc;display:inline-block;}
.li3 li{background-color:#ccc;}
.li4{background-color:#ccc;}
</style>
</head>
<body>
<div style="width:300px;height:200px;padding-top:10px;background-color:#ccc;padding-left:10px;display:inline;">
框模型
</div>
<div style="width:300px;height:200px;padding-top:10px;background-color:#999;padding-left:10px;display:inline-block">
框模型
</div>
<div style="width:300px;height:200px;padding-top:10px;background-color:#999;padding-left:10px;display:inline-block">
框模型
</div>
<div style="width:300px;height:200px;padding-top:10px;background-color:#ccc;padding-left:10px;">
框模型
</div>
<div style="width:300px;height:200px;padding-top:10px;background-color:#999;padding-left:10px;">
框模型
</div>
<p style="width:300px;height:200px;padding-top:10px;background-color:#ccc;padding-left:10px;">
框模型
</p>
<!--p为段落,所以前后有换行+空一行(16px;由margin指定的);而div只换行不空行-->
<p style="width:300px;height:200px;padding-top:10px;background-color:#ccc;padding-left:10px;display:inline-block">
框模型
</p>
<table>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
<ul class="li1">
<li>春</li>
<li>夏</li>
<li>秋</li>
<li>冬</li>
</ul>
<ul class="li2">
<li>春</li>
<li>夏</li>
<li>秋</li>
<li>冬</li>
</ul>
<ul class="li3">
<li>春</li>
<li>夏</li>
<li>秋</li>
<li>冬</li>
</ul>
<ul class="li4">
<li>春</li>
<li>夏</li>
<li>秋</li>
<li>冬</li>
</ul>
</body>
</html>

块级盒模型

新手前端笔记之--css盒子的更多相关文章

  1. 2.前端笔记之css

    title: 1.前端笔记之CSS date: 2016-04-05 23:05:51 tags: 前端 categories: w3c --- 作者:刘耀 **出处:http://www.liuya ...

  2. 前端笔记之CSS(上)

    层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言.CSS不仅可以静态 ...

  3. 新手前端笔记之--初识css

    css样式表是为了容纳与html文档分离出来的样式属性而产生的,所以她理所当然的包含两个部分:1.样式的表示,使用{属性1:属性值:属性2:属性值:...},2.样式与标签的对应(如何找的对应标签), ...

  4. CSS3学习笔记(2)-CSS盒子模型

    p{ font-size: 15px; text-indent: 2em; } .alexrootdiv>div{ background: #eeeeee; border: 1px solid ...

  5. web前端笔记整理---CSS

    一   Css  文件 Css: 美化HTML的 4种选择器: 元素选择 类选择 ID选择 伪类选择 常用的布局方案 1 写在什么位置能好用. 1.1 元素里面 优先级是最高的 1.2 元素外,文件内 ...

  6. 前端笔记之CSS(下)浮动&BFC&定位&Hack

    一.浮动 1.1 各个语言的主要知识点 HTML:标签语义化(那么怎么样布局才是合理的?没有绝对的对和错) CSS: 样式: 布局: 标准流(标准文档流.普通文档流):盒子模型(width/heigh ...

  7. 新手前端笔记之--初识html标签

    接触前端(好大气的名字啊)已经一个多月了,看了很多视频和博客,有了一定的感性认识,但还是需要总结一下以便系统化所学习的知识,就从html标签开始吧.关于标签,谈论最多的就是简洁和语义化.简洁指html ...

  8. 前端学习:学习笔记(CSS部分)

    前端学习:学习笔记(CSS部分) CSS的学习总结(图解) CSS的引入方式和书写规范 CSS的插入方式_内嵌样式 <!DOCTYPE html> <html> <hea ...

  9. 2、前端学习笔记之——css

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. spring的PropertyPlaceholderConfigurer不生效的问题

    经常出现这种问题,每次都debug知道原因,但每次都会忘记,所以记录一下. 原因:maven项目中使用了非maven管理的jar包(通过systemPath引用),这些jar包没有放在${projec ...

  2. linux虚拟机拓展大小

    http://blog.csdn.net/wutong_login/article/details/40147057?utm_source=tuicool http://www.linuxidc.co ...

  3. AFNetworking框架的使用

    #import "ViewController.h" #import "AFNetworking.h" @interface ViewController () ...

  4. java静态类、静态方法、静态代码块,静态变量及实例方法,实例变量初始化顺序及内存管理,机制

    1.当一个类被第一次使用时,它需要被类加载器加载,而加载过程涉及以下两点: (1)在加载一个类时,如果它的父类还未被加载,那么其父类必须先被加载: (2)当类加载到内存之后,按照在代码中的出现顺序执行 ...

  5. css3 文字溢出 换行实现方案

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. Codefroces A. Saitama Destroys Hotel

    A. Saitama Destroys Hotel time limit per test 1 second memory limit per test 256 megabytes input sta ...

  7. 如何建立远程桌面连接(XP、Vista、Win7)

    如何建立远程桌面连接(XP.Vista.Win7) 要求: 1:对方即你要连的机器必须要允许远程桌面连接,操作系统一般是winXP(单用户)和win2003server(多用户),具体设置:右击我的电 ...

  8. python 多线程学习小记

    python对于thread的管理中有两个函数:join和setDaemon setDaemon:如果在程序中将子线程设置为守护线程,则该子线程会在主线程结束时自动退出,设置方式为thread.set ...

  9. ES6学习笔记(五)函数的扩展

    1.函数参数的默认值 1.1基本用法 ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法. function log(x, y) { y = y || 'World'; console. ...

  10. 再谈怎样以最简单的方法将泛型为String类型的集合或String类型的数组转化为逗号间隔字符串形式

    今天review代码,看见某些大爷在将泛型为String类型的集合或String类型的数组转化为逗号间隔字符串形式时仍然仅仅顾结果不注重过程,"大爷"咱能负点责任吗? 将泛型为St ...