css问题

一、浮动

1.浮动特点:脱离文档流,向左/向右浮动直到遇到父元素或者别的浮动元素,浮动会导致父元素高度坍塌。

2.清除浮动:clear和bfc

/* clearfix方案(clear属性不允许被清除浮动的元素的左边/右边挨着浮动元素,底层原理是在被清除浮动的元素上边或者下边添加足够的清除空间) */
.clearfix:after{
    content: ‘‘;display: block;clear: both;
}

/* overflow不为none会触发bfc,具有bfc特性的元素的子元素不会受外部元素影响,也不会影响外部元素 */
.box{
    overflow:hidden;
}

二、Flex布局

1,意为弹性布局,设为Flex布局以后,子元素的floatclearvertical-align属性将失效。

2,容器的属性(其中ios9以下需要添加-webkit-前缀):

flex-direction:row | row-reverse | column | column-reverse决定主轴的方向(即项目排列方向);

flex-wrap:nowrap | wrap | wrap-reverse;如果一条轴线排不下,如何换行;

flex-flow:<flex-direction> || <flex-wrap>;

justify-content:flex-start | flex-end | center | space-between | space-around;主轴上的对齐方式;

align-items:flex-start | flex-end | center | baseline | stretch;交叉轴上如何对齐;

align-content:flex-start | flex-end | center | space-between | space-around | stretch;多根轴线对齐方式;

3,项目的属性:

order:排列顺序;

    flex-grow:放大比例,默认为0;

    flex-shrink:缩小比例,默认为1;

    flex-basis:项目占得主轴空间;默认auto;

    flex:默认为0 1 auto;

    align-self:允许单个项目有与其他项目不一样的对齐方式,默认为auto;

4,布局种类:

1,骰子布局

2,网格布局

3,圣杯布局

4,输入框布局

5,悬挂式布局

6,固定底栏

7,流式布局

三、box-sizing(盒子模型):

content-box(默认,边框在已设定的宽高外绘制)

border-box(边框在已设定的宽高内绘制)

四、background-clip(背景的绘制区域):

border-box(默认,背景用于边框)

padding-box(背景用于内边框)

content-box(背景只用于内容)

五、border-radius:

百分比是基于元素本身,大于50%,最后的效果都会等同于50%,这是因为如果两个相邻角的半径和超过了对应的盒子的边的长度,那么浏览器要重新计算保证它们不会重合。

六、判断进入区域:

原生方法:document.getElementById(‘target‘).offsetTop - document.documentElement.scrollTop < document.documentElement.clientHeight

jQuery:$(‘#target‘).offset().top - $(window).scrollTop() < $(window).height()

七、判断滚到底部

document.documentElement.scrollHeight - document.documentElement.scrollTop === document.documentElement.clientHeight

八、pointer-events:auto | none;

为none时可以穿透上层,去触发下层操作,使用场景为上层为动画效果,下层为实际需要触发的事件操作

九、水平垂直居中:

/* 方案1 */
.box{
  position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);
}
/* 方案2 */
.parent{
  display: flex;height: 100vh;
}
.child{
  margin: auto;
}
/* 方案3 */
.parent{
  display: flex;
  align-items: center;
  justify-content: center;
}

十. 高度根据宽度等比显示

/* 方案1 */
.element{width: 50vw;height: 50vw;border: 1px solid #000}
/* 方案2 padding%是基于父元素的宽度的百分比的内边距*/
.father{width:100%;height:100%;background:#ccc}
.child{width:50%;height:0;padding-bottom:50%;background:#eee;}

原文地址:https://www.cnblogs.com/colima/p/5973280.html

时间: 2024-11-02 12:29:23

css问题的相关文章

css中的px、em、rem 详解

概念介绍: 1.px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(Dots Per Inch,每英寸像素数),在扫描打印时一般都有DPI可选.Windows系统默认是96dpi,Apple系统默认是72dpi. 2.em(相对长度单位,相对于当前对象内文本的字体尺寸):是一个相对长度单位,最初是指字母M的宽度,故名em.现指的是字符宽度的倍数,用法类似百分比,如:0.8em, 1.2em,2em等.通常1em=16px

CSS样式的优先级

1.相同权值情况下,CSS样式的优先级总结来说,就是--就近原则(离被设置元素越近优先级别越高): 内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中). 2.权值不同时,浏览器是根据权值来判断使用哪种css样式的,哪种样式权值高就使用哪种样式. 下面是权值的规则: 标签的权值为1,类选择符的权值为10,ID选择符的权值最高为100.例如下面的代码: p{color:red;} /*标签,权值为1*/ p span{color:green;} /*两个标签,权值为1+

CSS 之怀疑自己的审美 2 (Day50)

阅读目录 伪类 选择器的优先级 css 属性操作 一.伪类 anchor伪类:专用于控制链接的显示效果 ''' a:link(没有接触过的链接),用于定义了链接的常规状态. a:hover(鼠标放在链接上的状态),用于产生视觉效果. a:visited(访问过的链接),用于阅读文章,能清楚的判断已经访问过的链接. a:active(在链接上按下鼠标时的状态),用于表现鼠标按下时的链接状态. 伪类选择器 : 伪类指的是标签的不同状态: a ==> 点过状态 没有点过的状态 鼠标悬浮状态 激活状态

CSS颜色代码大全

CSS颜色代码大全 颜色代码表(一): EEEEEE FFCCFF FF66FF FF00FF DDDDDD FFCCCC FF66CC FF00CC CCCCCC FFCC99 FF6699 FF0099 BBBBBB FFCC66 FF6666 FF0066 AAAAAA FFCC33 FF6633 FF0033 999999 FFCC00 FF6600 FF0000 888888 CCCCFF CC66FF CC00FF 777777 CCCCCC CC66CC CC00CC 666666

如何使用Flexbox和CSS Grid,实现高效布局

CSS 浮动属性一直是网站上排列元素的主要方法之一,但是当实现复杂布局时,这种方法不总是那么理想.幸运的是,在现代网页设计时代,使用 Flexbox 和 CSS Grid 来对齐元素,变得相对容易起来. 使用 Flexbox 可以使元素对齐变得容易,因此 Flexbox 已经被广泛使用了. 同时,CSS Grid 布局也为网页设计行业带来了很大的便利.虽然 CSS Grid 布局未被广泛采用,但是浏览器逐渐开始增加对 CSS Grid 布局的支持. 虽然 Flexbox 和 CSS Grid 可

css基础

css绝对是一个能够写到爆炸的东西,so,机智的小北方才不会写各种css样式具体的效果,相比之下更推荐大家记一些常用的key,至于效果,每次用的时候百度下就可以了, css的作用是对符合条件的标签进行渲染,那么首先就要匹配到对应标签啦,我萌有三种基础的模式来匹配希望改变样式的标签 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8">

前端 css 垂直居中及自适应问题

此css作用为将下面div结构中的Container-fluid背景自适应屏幕,content自适应居中 1.Div结构 all Head Container-fluid Content Under <div id="all">   <div  class="head" style="height: 81px;width: 100%;min-width: 1000px;position: relative;">      

css遮罩层

父元素:position:fixed; 让子元素居中对齐:position:absolute;top:0;bottom:0;left:0;right:0;margin:auto; <style> .loading{width:100%;height:100%;position:fixed;top:0;left:0;z-index:100;background:#fff;} .loading .pic {width:50px;height:50px;background:url(images/l

CSS作用域问题

今天去长虹面试,面试官问了一个问题,就是给一个div在三个地方设置不同的background,最后div显示的颜色是哪一个?当时我第一次回答的是最后一个,但是后来又改口说是第一个,回来一验证,证明自己错了,今天就总结一下CSS样式的作用域问题吧. 首先对HTML引入样式的优先级排序,数字越大优先级越高#### 样式优先级1. 浏览器缺省设置2. 外部样式表3. 内部样式表(位于 <head> 标签内部)4. 内联样式(在 HTML 元素内部) ---#### 外部样式表>浏览器缺省设置H

CSS学习

CSS css是英文Cascading Style Sheets的缩写,称为层叠样式表,用于对页面进行美化. 存在方式有三种:元素内联.页面嵌入和外部引入,比较三种方式的优缺点. 语法:style = 'key1:value1;key2:value2;' 在标签中使用 style='xx:xxx;' 在页面中嵌入 < style type="text/css"> </style > 块 引入外部css文件 css写在head里面,style标签中写样式 ID用