前端开发-css提升

小知识点:body与页面四周有个天生的8像素距离,所以里面的标签不写位置的时候会看到与边界有缝隙,想要无缝,设置*{margin:0;}即可
一、盒模型-内外边距(padding、margin)、边框border、宽width、高height
二、层模型
1、position:absolute

脱离原来位置进行定位,原来的层级就不保留它原来的位置了

相对于最近的有定位的父级进行定位,如果没有那么相对于文档进行定位
2、relative:保留原来位置进行定位

相对于原来的位置定位
对元素定位:用relative做参照物,absolute定位
3、fixed:广告定位,不随着页面滚动而滚动
div{
        /*相对于文档居中-如果是fixed就可以实现窗口居中定位*/
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100px;
    height: 100px;
    background-color: red;
    margin-left: -50px;
    margin-top: -50px;
}
三、两个经典的bug

1、父子级都设置垂直方向的margin的时候,父子元素是结合到一起的,只有当子级元素margin大于父级的时候才会有效果,并且带着父元素一起移动,就是说无论你怎么设margin-top,子元素与父元素top之间也不会有距离
margin塌陷
解决办法

1)父级加个边框:border:1px solid black;
确实能解决问题,但一般不这么做
2)bfc(block format context)块级格式化上下文
css认为每一个标签都是一个盒子,每个盒子有自己的渲染规则,bfc可以改变某些盒子的渲染规则

如何触发一个盒子的bfc:
position:absolute;
display:inline-block;
float:left/right;//浮动布局
overflow:hidden://溢出部分隐藏
虽然能解决问题,但是会带来一些新的影响,实际开发中根据需要自行选择

2、兄弟元素在垂直方向的margin问题
margin合并

同样也可以用bfc来解决这个问题
一般这种问题可以不解决,设置某一个的margin即可
3、float:left/right(可实现图文混排环绕)

如果所有元素都是浮动,可以让元素从左或从右站队
如果只是某一个元素是浮动的,它就产生了浮动流

所有产生了浮动流的元素,块级元素看不到他们(块级元素会占有他们原来的位置,覆盖,类似层模型)

产生了bfc的元素和文本类型属性的元素(inline)以及文本都能看到浮动元素(也就是不会覆盖)
如果子元素都是浮动元素,父级是块元素,会造成块元素包不住浮动元素的情况

1)只需要加个<p>标签,设置clear:both(块级元素才能使用)就能清楚所有浮动效果,让子元素将父元素自适应撑开
这种会改变原来的页面结构,不建议
2)另一个知识:每一个标签都有伪元素,有前后两个,使用双冒号可以用css改变它的样式,可以跟正常元素一样使用,只不过平常看不见
伪元素天生都是行级元素
span::before{
    content:"前伪元素";
    clear:both;/*块级元素使用才有效果*/
    display:block;
}
span::after{
    content:"后伪元素";
}

3)只要父级元素触发了bfc、或者是文本类型、浮动类型都可以包住浮动元素

凡是设置为position:abolote;float:left/right;的元素,系统会从内部把它转换成inline-block,宽高就不由内容决定了,可自行设置
四、css补充知识

1、文字溢出容器,要显示点点点
单行文本溢出处理

多行做文字截断即可
2、网络不好时的处理

网络不好会优先加载html,所以要保证没有css的情况下html也能展现内容

还可以利用padding不能显示文字的特性来处理

<span>行级元素只能嵌套行级元素

块级元素能嵌套任何元素
<p>标签虽然是块级元素,但是不允许嵌套<div>,否则会被拆分成两个<p>标签
<a>标签不能嵌套<a>标签

3、一旦一个文本类元素或者行级块元素包含内容文字,外面的文字就会跟内部文字底对齐,而不是跟元素底部对齐
span{
      display:inline-block;
      width:100px;
      height:100px;
      background-color:red;
      font-size:50px;
      vertical-align:middle;/*中线对齐,也可以写数值更改对齐线*/
 }
4、三大特性

4.1继承性

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

推荐阅读更多精彩内容