html css常用解决方案

解决坍塌问题

父元素高度坍塌的问题
造成的原因是子元素脱离文档流,浮动或定位了
解决办法1:父元素开启BFC,使用overflow :hidden
解决办法2:浮动的子元素后面添加个空div,设置清除浮动<div style="clear:both"></div>,会造成多一个div
解决办法3:使用after伪类,在坍塌的父元素上加一个clearfix的class,然后给该class设置伪类
clearfix::after{
      content:"";
      display:block;    //设置成table也没问题
      clear:both
}

子元素解决margin-top塌陷的问题(子元素,设置margin-top无效,会带着父元素一起)
解决的办法是在父元素上设置befor伪类,在前面加一个空的table即可解决
clearfix::befor{
      content:"";
      display:table;
      clear:both
}
所以,在开发中,一般在父元素上,同时设置befor和after伪类,解决坍塌问题
clearfix::befor,
clearfix::after{
      content:"";
      display:table;
      clear:both
}

平级兄弟元素,上下margin重合。一般用数学方法解决。

标题超过一定宽度后,用三个点来代替的解决方案
a{
  display:inline-block;
  white-space:nowrap;     强制不换行
  overflow:hidden;            超出部分隐藏
   text-overflow:ellipsis;    文本溢出时显示省略符
}
<html lang="zh-cmn-Hans">简体中文的话这样写更规范
子div在父div里完全居中的解决方案
<div class="par"><div class="son"></div></div>
1.第一种方案,绝对定位和负边距
.par{
            width: 200px;
            height: 200px;
            margin: 200px auto;
            background-color: red;
            position: relative;
        }
        .par .son{
            width: 100px;
            height: 100px;
            background-color: green;
            position: absolute;
            top:50%;
            left:50%;
            margin-left:-50px;
            margin-top:-50px;
        }
定位设置子绝父相,margin-left:负的子元素宽度一半
2.第二种解决方案,flex布局
.par{
            width: 200px;
            height: 200px;
            margin: 200px auto;
            background-color: red;
            display: flex;
            justify-content:center;
            align-items:Center;
        }
        .par .son{
            width: 100px;
            height: 100px;
            background-color: green;
        }
就三板斧,在父元素上设置
            display: flex;
            justify-content:center;
            align-items:Center;

内联元素:span/strong/em/del/ins/lable/a/sub/sup
块级元素:div/h1/p/address/ol/ul/li/dl/dt/dd/table/form/fieldset/legend
内联块元素:input/img/select/textarea/iframe

chrome->webkit/blink
safari->webkit
firefox->gecko
IE->trident
opeara->presto

内联样式
<div style="widows: 100px;height:50px;background-color: red;"></div>
内部样式表
外部样式表/外链样式
权重依次变小
属性选择器和类选择器,权重同级,谁在下面显示谁的效果
!important > id > class|属性 > 标签|微元素 > *
!important正无穷,内联1000,id100,class|属性|伪类10,标签|微元素1,*0

[id="box1"]{ width: 100px; height: 100px; background-color: red; }
属性选择器,选中id为box1的盒子加样式。如果只写[ id ],就是选中所有带id属性的盒子
特比是在input输入框修改宽度时,可以用 [ type="password" ]选中特定的表单

并列选择器
<div class="box box1"></div> <div class="box box2"></div>
.box{ width: 100px; height: 100px; }
.box.box1{ background-color: red; }
.box.box2{ background-color: blue; }
并列选择器和下级选择器,不同,注意。
div .box{ }这个是下级选择器,也叫派生选择器

box-sizing: border-box;这样设置,可以让设置的padding和border不会撑开盒子
display: flex;如果父元素使用了flex布局,子元素不需要设置float浮动
父元素设置justify-content,控制子元素水平排列方式,子元素左对齐flex-start,子元素右对齐flex-end,居中对齐center,两端对齐space-between,两端及中间留白对齐space-around
父元素设置align-items,控制子元素垂直方向排列方式,顶部对齐flex-start,中间对齐center,底部对齐flex-end
父元素设置flex-direction,控制子元素排列方向或顺序,默认水平显示row,水平翻转row-reverse,垂直分布column,垂直分布翻转column-reverse
另外,如果是多行的话,控制垂直排列,需要用align-content,和align-items属性一样的效果。
子元素是否在一行显示,flex-wrap: nowrap;控制在一行显示不换行,wrap自动换行
设置子级flex:1,指的是各子级出去自定义部分宽度后平分宽度。

visibility: hidden;保留被隐藏元素占用的空间
display: none; 不保留被隐藏元素占用的空间
opacity: 0.3; 值越大越不透明,值越小越透明(模糊)
input修改聚焦时的外边框,input{ outline: none; }
input:focus{ border: 1px solid red; }
table tr:nth-child(4)给第四行加样式的选择器,xx:nth-child(5)表示第五个xx元素

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

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,727评论 1 92
  • H5移动端知识点总结 阅读目录 移动开发基本知识点 calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇阅读 4,395评论 0 26
  • 移动开发基本知识点 一.使用rem作为单位 html { font-size: 100px; } @media(m...
    横冲直撞666阅读 3,453评论 0 6
  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,584评论 0 6
  • 阅读目录移动开发基本知识点 calc基本用法box-sizing的理解及使用理解display:box的布局理解f...
    张宪宇阅读 1,512评论 0 1