总结CSS技巧

作者: jie_YJ | 来源:发表于2018-09-27 00:26 被阅读1次

    一、定宽水平居中:

    1)使用margin:0 auto;  有良好的兼容性,兼容IE8

    2)position:relative;left:50%;margin-left: - 'boxHalf-width'  //boxHalf-width指盒子宽度的一半,

    这里position:absolute也是可以的,注意这样父盒子也要给它一个定位属性。

    3)padding/margin:0 paddingWidth //paddingWidth指盒子的宽度减去当前盒子宽度除二(简称:padding/margin剩余法)

    二、不定宽水平居中:

    1)父盒子text-align:center;当前盒子display:inline-block;//会影响父盒子内的文本内容

    2)position:relative;left:50%;transform:translateX(-50%); 不兼容IE8等低版本浏览器

    3)父盒子display:table;子盒子display:table-cell;text-align:center 

    这里注意:设置了table-ce'l'l后,子盒子尽量避免使用float和position,可能会受影响;同时使用的margin会失效。

    三、定高垂直居中:

    1)padding/margin剩余法

    2)position:relative;top:50%;margin-top:-boxHalf-height //boxHalf-width指盒子高度的一半,

    这里要注意:父盒子要处理子盒子的margin-top问题,方式有很多例如,给父盒子overflow:hidden;同样position:absolute也可以,记得父盒子也要给定位属性

    四、不定高垂直居中:

    1)position:relative;top:50%;transform:translateY(-50%) ; //不兼容IE8等低版本浏览器

    2)父盒子display:table;子盒子display:table-cell;vertial-align:middle;//出现的问题跟上面一样

    五、单行文本垂直居中:

    1)父盒子line-height: boxHeight //boxHeight指父盒子的高度

    六、多行~n行文本垂直居中

    1)父盒子line-height:boxHeight / n

    提示一点:元素可以通过display来设置定宽或者是不定宽,然后变通地采用各种方案

    还有很多其他的CSS技巧,flex相关的和一些常见的CSS使用方式。先暂时写这些先。

    仅作为自己工作的总结,可能有很多坑或者不完善的地方,谢谢指出,勿喷!

    待续中。。。

    相关文章

      网友评论

        本文标题:总结CSS技巧

        本文链接:https://www.haomeiwen.com/subject/gllsoftx.html