zoukankan      html  css  js  c++  java
  • css比较有用的属性

    最近使用css的相关属性会出现这样那样的问题,这里简单的汇总一下,希望遇到同样问题的童鞋有所帮助~~

    一、calc():计算css属性值

    简介:calc()是css3的一个新增的功能,用来指定元素的长度。使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值。calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度。

    问题一:calc()计算不生效

    解决方法:表达式中有“+”和“-”时,其前后必须要有空格,如”widht: calc(100% + 5px)”;

    问题二:calc()在less文件中使用,”width : calc(100% - 30px)“会被解析成” calc(70%);

    解决方法:正确的写法是:width : calc(~"100% - 30px");

    二、CSS3 :nth-child() 选择器

    定义以及用法:nth-child(n) 选择器匹配父元素中的第 n 个子元素,元素类型没有限制。n 可以是一个数字,一个关键字,或者一个公式。

    注意:使用公式(an+ b)。

    a代表一个循环的大小,N是一个计数器(从0开始),以及b是偏移量。 在这里,我们对所有索引是3的倍数的p元素指定了背景颜色:

    1 p:nth-child(3n+0)
    2 {
    3     background:#ff0000;
    4 }

    三、css3 box-sizing属性

    box-sizing属性可以为三个值之一:content-box(default),border-box,padding-box。

    content-box,border和padding不计算入width之内;

    padding-box,padding计算入width内;

    border-box,border和padding计算入width之内;当为块级元素设置width和height属性后,如果使用的padding的值较大,会使内容溢出,而这个属性完美的解决了这个问题,即:cintent+padding+border=width;

    四、CSS  :before 伪元素

    ":before" 伪元素可以在元素的内容前面插入新内容。

    下面的例子在每个 <h1>元素前面插入一幅图片

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4 <meta charset="utf-8"> 
     5 <title>W3Cschool教程(w3cschool.cn)</title> 
     6 <style>
     7 h1:after {content:url(http://www.w3cschool.cn/statics/images/course/smiley.gif);}
     8 </style>
     9 </head>
    10 
    11 <body>
    12 <h1>这是一个标题</h1>
    13 <p>在伪元素插入元素后的内容。</p>
    14 <h1>这是一个标题</h1>
    15 <p><b>注意:</b>仅当!DOCTYPE 已经声明 IE8支持这个内容属性。</p>
    16 </body>
    17 </html>

    效果如下:

    五、translate(-50%,-50%)

    用 position 加 translate translate(-50%,-50%) 比较奇特,百分比计算不是以父元素为基准,而是以自己为基准。

    示例:

     1 <style>
     2 #ex3_container{
     3 width:200px;
     4 height:200px;
     5 background-color:yellow;
     6 position:relative;
     7 }
     8 #ex3_content{
     9 left:50%; 
    top
    :50%; 10 transform:translate(-50%,-50%); 11 -webkit-transform:translate(-50%,-50%); 12 background-color:gray; 13 color:white; 14 position:absolute; 15 } 16 </style> 17 <div id="ex3_container"><div id="ex3_content">Hello World</div></div>

    实现的效果如下:

  • 相关阅读:
    PostMan使用教程(1)
    测试工作量的评估方法
    Jmeter之Bean shell使用(二)
    centos7 编译安装redis
    Centos7 安装mariadb
    Centos7 安装使用virtualenvwrapper
    Centos7安装python3.6
    linux基础命令2
    linux基础命令
    linux目录结构
  • 原文地址:https://www.cnblogs.com/yy136/p/10249326.html
Copyright © 2011-2022 走看看