CSS水平/垂直居中样式+CSS绘图与动画总结

居中

1.最简单的最常规的 "设置宽度自动margin"

<div class="div1"></div>
.div1{
    width: 300px;
    margin: auto;
    height: 20px;
    background: red;
}

2.flex居中 可以上下居中

<div class="container">
    <div class="box"></div>
    <div class="box"></div>
    <div class="box"></div>
</div>
body,html{
    background: #ddd;
    height: 100%;
}
.container{
    height: 100%;/*容器必须要有高度*/
    display: flex;/*设置flex显示方式*/
    justify-content: center;/*垂直方向居中*/
    align-items: center;/*水平方向居中*/
    flex-direction:column;/*柱状竖直排列*/
}
.box{
    width: 300px;
    height: 20px;
    background: red;
    display: flex;
    margin: 20px;
}

3.flex栅格

    <div class="container">
        <div class="box1"></div>
        <div class="box2"></div>
        <div class="box3"></div>
    </div>
.container{
    height: 100%;/*给一个固定高度好看效果,实际可以让高度自适应*/
    display: flex;/*设置flex显示方式*/
    flex-direction:column;/*柱状竖直排列*/
    /*flex-direction:row;/*横向排列*/
    /*flex-flow: column;*/
}

.container div{
    display: flex;
}
.box1{
    flex: 2;
    background:orange;
}

.box2{
    flex: 6;
    background: gray;
}

.box3{
    flex: 2;
    background:orange;
}

这个flex-flow与flex-direction是一样的吗?
参考


绘图

三角形,梯形

其实这种绘图就是让border变粗,然后交错的地方会互相叠加

Paste_Image.png
#div{
width: 0px;
 height: 0px;
 border-left: 45px solid gold;
 border-right: 32px solid green;
 border-bottom: 45px solid red;
 border-top: 45px solid blue;
}

修改一下宽或者高,就会形成梯形

Paste_Image.png
#div{
width: 0px;
 height: 35px;
 border-left: 45px solid gold;
 border-right: 32px solid green;
 border-bottom: 45px solid red;
 border-top: 45px solid blue;
}

圆形

圆形很简单,就是把普通带边框的div加上一个50%的圆角

#div{
    width: 30px;
    height: 50px;
    border: 1px solid black;
    border-radius: 50%;
}

额外的一大堆想都想不到的绘图


动画

简单动画,常用的动画,比如hover以后变长,变色,开发用到这样就差不多了

#div1 {
    width: 100px;
    height: 100px;
    background: blue;
    transition-property: background,width,transform;
    transition-duration:  0.5s;
    transition-timing-function:linear;
}
#div1:hover {
    width: 200px;
    background: red;
    transition-property: background,width,transform;
    transition-duration: 0.5s;
    transition-timing-function:linear;
    transform:rotate(225deg);
}

补上一个简单的动画库可以快速做一些特效

用法也超简单

复杂动画

项目中从来没有用到过,不是很重要 待日后补充

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

推荐阅读更多精彩内容

  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 1,805评论 0 2
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,338评论 0 11
  • 移动开发基本知识点 一.使用rem作为单位 html { font-size: 100px; } @media(m...
    横冲直撞666阅读 3,518评论 0 6
  • H5移动端知识点总结 阅读目录 移动开发基本知识点 calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇阅读 4,628评论 0 26
  • 一朝一生长,无需耕种藏; 遥望天犹高,绽在离水旁; 荣枯自有意,何须秋风忙; 待到春烂漫,遍地野草香。
    京中少年阅读 210评论 4 14