CSS学习笔记

CSS(Cascading Style Sheets )

层叠样式表,用来描述HTML或XML文档的呈现。CSS1现已废弃,CSS2.1为推荐标准,CSS3正在标准化中。

CSS的四种引入方式:

  1. 内联、即在HTML文本中添加style属性;
    <body><div style="color: red; font-size: 1px;"></div></body>
  2. style标签;
    <head><style type="text/css"><div>border: 1px solid red;</div</stytle></head>
  3. 外部文件引入;
    <link rel="stylesheet" href="./a.css">
  4. @import url (a.css);
    @import url list-of-media-queries;

CSS实现左右/左中右布局:

可以给所有子元素添加 float: left; 同时给父元素添加class="clearfix"来解决浮动出现的bug。
html:

    <div class="father clearfix">
    <div class="child">元素1</div>
    <div class="child">元素2</div>
    <div class="child">元素3</div></div>

css:

 .clearfix::after{
            content: "";
            display: block;
            clear: both;
  }
 .child {
            float: left;
  }

除此方法外,还可以:
设置每个块级元素的display属性为inline-block;同时设置vertical-align: top;来解决出现的bug。然后给父元素添加text-align: center; 从而实现块状元素水平居中。

水平居中:

  1. 内联元素居中:
    将内联元素外部的块级元素的text-align 设置为center,即可实现内联元素室的水平居中。设置行高line-height控制内联元素所占的高度。

html:

<div class="father">
<span class="child">水平居中</span></div>

css:

div.father{
text-align: center;
border:1px solid red;
}
span.child{
line-height:  20px;
}

内联元素:

b, big, i, small, tt
abbr, acronym, cite, code, dfn, em, kbd,
strong, samp, var
a, bdo, br, img, map, object, q, script,
span, sub, sup
button, input, label, select, textarea

  1. 块级元素水平居中:
    将固定高度的块级元素的margin-left和margin-right 设置为auto;即可。

html:

<div class="father">
<div class="child">水平居中</div></div>

css:

text-align: center;
border: 1px solid red;
height: 20px;
}
div.child{
border: 1px solid green;
height:10px;
width: 60px;
margin: 0 auto;
}

3.多个块级元素水平居中:
将每个块级元素的display设置为inline-block,然后将父容器的text-align设置为center;
html:

<div class="ch1"></div>
<div class="ch2"></div></div>

css:

div.fa{
text-align: center;
border: 1px solid red;
height: 30px;
}
div.ch1,
div.ch2{
display: inline-block;
}

垂直居中

  1. 内联元素垂直居中:
    设置行高line-height 与父元素的高度height相等,且内联元素的字体大小远小于行高。
    html:
<div class="father">
   <span class="child">xxx</span></div>

css:

.father{
 border: 1px solid red;
height: 80px;
}
.child{
line-height: 80px;
}
  1. 块级元素垂直居中:
    *固定高度的块级元素:
    通过绝对定位元素距离顶部50%,并设置margin-top向上移元素高度的一半。
    html:
<div class="father">
<span class="child">固定高度垂直居中</span>
</div>

css:

.father {
  border: 1px solid red;
  position: relative;
  height: 100px;
}      
.child {
  position: absolute;
  top: 50%;
  height:40px;
  border: 1px solid green;
  margin-top: -20px;
}

块级元素的高度由其内部文档流元素的高度总和决定
文档流:文档内元素的流动方向
内联元素:从左往右流动,宽度不够另起一行
块级元素:每块占一行,从上往下流
可使用word-break对需要断行的字断行
内联元素的高度很难决定,一般用line-height 固定一个值
脱离文档流相对屏幕定位: position:fixed;
脱离文档流:position:absolut;相对于祖先中的第一个 position: relative; 定位。
让背景图片居中:background-position: center center;
背景图按比例缩放: background-size: cover;
css画各种形状的图形:" css tricks shapes" <kbd>enter</kbd>
css渐变实现: 搜索 “css渐变”
css动画、阴影
方边框变圆边框: border-radius; 50%;
边框没有把元素包住: display: inline-block;
css中position的取值:static relative absolute fixed sticky
字体默认的行高由字体设计师决定
content-box 与 border-box的区别是:
content-box的width 不包括padding和border
border-box的width 包括padding和 border
给display :inline 元素设置宽高是无效的,设置margin-top 、margin-bottom也无效
:xxx 伪类 :nth-child(odd/even)
:: xxx 伪元素 ::before / :: after

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,806评论 1 92
  • 1.CSS基本概念 1.1 CSS的定义 CSS(Cascading Style Sheets)层叠样式表,主要用...
    寥寥十一阅读 1,875评论 0 6
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,736评论 1 45
  • 写这篇博客主要是为了记录我学习css中的一些学习笔记, 因为我个人特别头疼css这个东西, 所以学到什么有用的就都...
    squall1744阅读 608评论 2 8
  • 我觉得这些话是成人世界的写照,结识一位新的朋友,没有人关心一些基本的、重要的问题:他的声音听起来怎么样?最喜欢什么...
    曼曼风雨阅读 3,848评论 0 1