CSS基础之权重深入+盒子模型+标准文档流+浮动

1.权重问题深入

1.1同一个标签,携带了多个类名,且有属性描述相同有冲突时,只看CSS,谁在后面听谁的

image.png

image.png

1.2. !important标记

a: !important提升的是一个属性,而不是一个选择器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        p{
            color:red!important;
            font-size: 100px ;
            text-decoration: underline;
        }
        #para1{
            color:blue;
            font-size: 50px;
        }
        .spec{
            color:green;
            font-size: 20px;
        }
    </style>
</head>
<body>
    <p id="para1" class="spec">文字</p>
</body>
</html>
image.png
b: !important无法提升继承的权重,该是0还是0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        div{
            color:red !important;
        }
        p{
            color:blue;
        }
    </style>
</head>
<body>
    <div>
        <p>哈哈哈哈哈哈哈哈</p>
    </div>
</body>
</html>
image.png
c: !important不影响就近原则
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        div{
            color:red !important;
        }
        ul{
            color:green;
        }
    </style>
</head>
<body>
    <div>
        <ul>
            <li>猜猜我是什么颜色</li>
        </ul>
    </div>
</body>
</html>
image.png

1.3. 权重计算的总结

image.png

2.盒子模型

width是“宽度”的意思,CSS中width指的是内容的宽度,而不是盒子的宽度。
height是“高度”的意思,CSS中height指的是内容的高度,而不是盒子的高度
padding是“内边距”的意思
border是“边框”
margin是“外边距”
border  边框 ,边框有三个要素:粗细、线型、颜色。
border属性能够被拆开,有两大种拆开的方式:
1) 按3要素:border-width、border-style、border-color
2) 按方向:border-top、border-right、border-bottom、border-left
3)如果某一个小要素后面是空格隔开的多个值,那么就是上右下左的顺序:
border: 1px dashed red;
    div{
            width: 200px;
            height: 200px;
            border-width:10px 20px;
            border-style:solid dashed dotted;
            border-color:red green blue yellow;
        }
4)按方向来拆:
1   border-top:10px solid red;
2   border-right:10px solid red;
3   border-bottom:10px solid red;
4   border-left:10px solid red;
等价于:    border:10px solid red;
按方向还能再拆一层,就是把每个方向的,每个要素拆开,一共12条语句
1   border-top-width:10px;
2   border-top-style:solid;
3   border-top-color:red;
4   border-right-width:10px;
5   border-right-style:solid;
6   border-right-color:red;
7   border-bottom-width:10px;
8   border-bottom-style:solid;
9   border-bottom-color:red;
10  border-left-width:10px;
11  border-left-style:solid;
12  border-left-color:red;
等价于:    border:10px solid red;

border可以没有,
1   border:none;
某一条边没有:
1   border-left: none;
也可以调整左边边框的宽度为0:
1   border-left-width: 0;

image.png
image.png
image.png

3.标准文档流

3.1块级元素和行内元素

a:块级元素
霸占一行,不能与其他任何元素并列, 能接受宽、高,如果不设置宽度,那么宽度将默认变为父亲的100%。
b: 行内元素
与其他行内元素并排,不能设置宽、高。默认的宽度,就是文字的宽度。
在HTML中,标签分类:文本级、容器级。
文本级:p、span、a、b、i、u、em
容器级:div、h系列、li、dt、dd

CSS的分类和上面的很像,就p不一样:
所有的文本级标签,都是行内元素,除了p,p是个文本级,但是是个块级元素。
所有的容器级标签都是块级元素。
image.png
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        h1{
            width: 400px;
            height: 90px;
            background-color: pink;
        }
        span{
            width: 400px;
            height: 90px;
            background-color: pink;
        }
    </style>
</head>
<body>
    <h1>哈哈哈哈</h1>
    <h1>嘻嘻嘻嘻</h1>
    <span>哈哈哈哈</span>
    <span>嘻嘻嘻嘻</span>
</body>
</html>
image.png

3.2.块级元素和行内元素的相互转换

a:块级元素设为行内元素
display是“显示模式”的意思,用来改变元素的行内、块级性质
inline就是“行内”。一旦,给一个标签设置 display: inline;
那么,这个标签将立即变为行内元素。此时它和一个span无异:
● 此时这个div不能设置宽度、高度;
● 此时这个div可以和别人并排了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        div{
            display: inline;
            background-color: pink;
            width: 500px;
            height: 500px;
        }
        h1{
            background-color: greenyellow;
            display: inline;
            font-size: 20px;
            font-weight: normal;
        }
    </style>
</head>
<body>
    <div>我是一个div</div>
    <div>我是一个div</div>

    <h1>我</h1><h1>爱</h1><h1>你</h1><h1>们</h1>
</body>
</html>
image.png
b:行内元素设为块级元素
让标签变为块级元素。此时这个标签,和一个div无异:
● 此时这个span能够设置宽度、高度。
● 此时这个span必须霸占一行了,别人无法和他并排
● 如果不设置宽度,将撑满父亲
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        span{
            display: block;
            width: 200px;
            height: 200px;
            background-color: pink;
        }
        a{
            display: block;
            width: 250px;
            height: 40px;
            /*文本居中:*/
            text-align: center;
            /*行高40,和盒子一样高,所以就垂直居中了,后面讲*/
            line-height: 40px;
            background-color: orange;
        }
    </style>
</head>
<body>
    <a href="http://www.163.com">点击我去网易</a>

    <span>我是一个span</span>
    <span>我是一个span</span>

</body>
</html>
image.png
c:脱离标准文档流
1) 浮动
2) 绝对定位
3) 固定定位

4.浮动

4.1.浮动的元素脱标

一旦一个元素浮动了,那么,将能够并排了,并且能够设置宽高了。无论它原来是个div还是个span
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        .box1{
            float: left;
            width: 200px;
            height: 200px;
            background-color: yellowgreen;
        }
        .box2{
            width: 350px;
            height: 350px;
            background-color: skyblue;
        }
    </style>
</head>
<body>
    <div class="box1"></div>
    <div class="box2"></div>
</body>
</html>
image.png

4.2.浮动的元素互相贴靠

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        span{
            float: left;
            width: 200px;
            height: 200px;
            background-color: orange;
        }
    </style>
</head>
<body>
    <span>我是span</span>
    <span>我是span</span>
    <span>我是span</span>
    <span>我是span</span>
    <span>我是span</span>
</body>
</html>
image.png
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        body{
            font-size: 60px;
        }
        .box1{
            float: left;
            width: 100px;
            height: 100px;
            background-color: yellowgreen;
        }
        .box2{
            float: left;
            width: 120px;
            height: 220px;
            background-color: gold;
        }
        .box3{
            float: left;
            width: 340px;
            height: 300px;
            background-color: skyblue;
        }
    </style>
</head>
<body>
    <div class="box1">1</div>
    <div class="box2">2</div>
    <div class="box3">3</div>
</body>
</html>
image.png

4.3.浮动的元素有字围效果

让div浮动,p不浮动,div挡住了p,但是p中的文字不会被挡住,形成“字围”效果。我们在初期一定要遵循一个原则:永远不是一个东西单独浮动,浮动都是一起浮动,要浮动,大家都浮动.
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
    <style type="text/css">
        div{
            float: left;
            width: 344px;
            height: 516px;
            background-color: orange;
        }
    </style>
</head>
<body>
    <div>
        <img src="images/1.jpg" alt="" />
    </div>
    <p>123文字文字文......</p>
</body>

</html>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,727评论 1 92
  • 本文主要是起笔记的作用,内容来自慕课网. 认识CSS样式 CSS全称为“层叠样式表 (Cascading Styl...
    0o冻僵的企鹅o0阅读 2,620评论 0 30
  • CSS基础 本文包括CSS基础知识选择器(重要!!!)继承、特殊性、层叠、重要性CSS格式化排版单位和值盒模型浮动...
    廖少少阅读 3,057评论 0 40
  • 家庭和职场一样,都喜欢自律、上进、好学、能出成绩的人。 ——题记 《我的前半生》已经...
    堂前燕子阅读 1,424评论 4 11
  • 带几个合唱团,发觉最难过的就是让大家背谱、背歌词。因为这是合唱向纵深提高的必由之路,在这个地方出现滞留,许多设想变...
    徐小多杭州阅读 2,377评论 1 1