一天一个CSS属性

CSS单位

em

em:为css的相对单位,参照其父元素的fontSize;等于父元素的fontSize*em值

如果没有设置父元素的font-size;则参照html元素的font-size值;没有html则参照浏览器一般字体大小值16px。

rem

root em
rem也是css中相对单位,参照html的fontSize,没有则参照16px。
html:fontSize:12px ; fontSize:2rem==>24px

style{
	html{font-size:24px}
	div{height:10rem,width:10rem}
}
//div的宽高则都是240px,rem基于html的fontSize来的。
<html> <div>123</div> </html>

margin-top

div高度为0,如果设置了上边距,上边距会占据文档流。
如果该div下面的元素设置了margin-top会造成margin重叠

用于,一个页面,多个上下排列的模块,中间有间隔的,做统一的设置

父元素背景图片不包含第一个高度为0但是有上边距的元素

line-height

属性值
案例

<div style="line-height:150%;font-size:16px;background-color: rosybrown;">
  父元素内容
  <div style="font-size:30px;background-color: sienna;">
    Web前端开发
  </div>
</div>
百分比
    根据父元素字体大小计算
    先计算父元素的行高,然后让子元素继承
    行高=16px*150%=24px,子元素继承行高
em
    根据父元素字体大小计算
    先计算父元素的行高,然后让子元素继承
    行高=16px*1.5em=24px,子元素继承行高
数字
    根据子元素字体大小计算
    行高30px*1.5=45px

背景图像

background-image

值:

  • url(’’) 引入本地图片

理解:

  • 设置元素的背景图片

默认显示效果:

  • 如果图片太大,会充满整个元素,元素的背景可能只会看到图片的一部分
  • 如果图片大小比元素小,则repeat排列在元素的背景
  • 背景图像在不占据border-box,占据content-box/padding-box,background-color之上

图片比元素大的显示

图片比元素小的显示


background-repeat

理解:

  • 应用在background-image的图像上,设置图像的平铺效果,就像平时设置电脑桌面图片一样

值:

  • repeat 【默认】
  • no-repeat 【如下图所示,是了no-repeat之后的效果,background-color出来了】

在这里插入图片描述


background-position

理解:

  • 应用在background-image背景图像上
  • 控制背景图像在背景区域中的起始显示位置

CSS1:

  • 2个参数值
  • 默认值0%,0%;
  • 第一个横坐标,第二个值纵坐标【背景区域的左上角】

三种值方式:

  • xpos ypos: 关键字定位,应用的对齐规则;

    • xpos:
      • left【图像的左边与与元素的左边对齐】
      • center:背景图像的中心与元素的中心对齐
      • right;
  • ypos:top|center|bottom

  • x% y%: 百分比定位,应用坐标轴定位
    x = (对象的宽度 - 图像的宽度) * x%;y = (对象的高度 - 图像的高度) * y%;
    3
    . x y:表示使用长度值定位,应用坐标轴定位;是将背景图像的左上角,放置在对象的背景区域中(x, y)

  • 值可以省略

    • 有一个值:则第二个值是center;
    • 有两个值:第一个是水平偏移【长度或百分比】,第二个垂直偏移【长度或百分比】
    • 所有值得方式都是简写成长度值得方式,默认0px 0px
  • 相关写法:

    • background-position: left 10px top 15px; 【表示图像在左上角区域,且左边偏移10px,上边偏移15px,可以简写成10px 15px】
    • background-position: left top ; 【表示图像在左边边区域,偏移0px,上边偏移0px,可以简写成0px 0px】
    • background-position: left 10px ;【可以简写成:0px 10px】

    background-position


background-size

作用:设置背景图片大小;
初始值:

  • auto auto
  • 以背景图片的比例缩放背景图片

值:

  • 一个值:则是宽度值,高度值为auto
  • 两个值:则第一个值为宽度值,第二个值为高度值

值的类型:

  • 百分比:相对于背景区域的百分比
  • 长度:在这里插入代码片
  • 关键字:
    • auto:以背景图片的比例缩放背景图片;如果背景图片比背景区域大很多,如果不设置background-size,则只会看到图片的左上角区域;
    • contain:
    • cover:

百分比
可以:

代码含义
background-size: 100% 0.7rem;设置背景图片的具体高度为0.7rem
background-size: 3rem;设置背景图片的宽度为3rem,高度为auto(根据背景图片的比例缩放图片)
background-size: 100% 0.7rem;设置背景的具体高度为0.7rem
background-size: 100% 0.7rem;设置背景的具体高度为0.7rem

案例1:

背景图片比元素大,不设置background-size的情况下
  • 元素大小:200&200;
  • 背景图片900&900;
  • 没有设置background-size;则默认background-size: auto auto; 即图片原始大小,不会进行缩放。
    代码:
//样式
<style>
  .wrap{
        width: 200px;
        height: 300px;
        background-color: yellow;
        background-image: url('./img/1.png');
    }
</style>

//元素
 <div class="wrap">
       <div>元素大小:200*200</div>
       <div>背景图片:900*900</div>
 </div>

原图片:
查看样式:

只看到背景图片左上角

设置background-size: cover

cover英文意思:覆盖,盖住;指背景图片覆盖了整个背景区域
特点:

  • 背景图片被缩放,图片的宽或者高覆盖背景区域
  • 图片不会被压扁,保留了原来的宽高比
  • 图片的宽或者高被剪裁,如果图片高覆盖的背景区域,图片宽度就会被剪裁
    查看效果:
    cover

background-size: contain

contain英文翻译:包含,容纳;指的全部的背景图片包含在整个背景区域中

特点:

  • 图片会被缩放
  • 保留了图片的宽高比
  • 图片全部被包含在背景区域
  • 图片和背景区域大小不同时,背景区域会出现空白处,显示背景颜色

查看效果:

contain

background

不规则卡片效果
radial-gradient函数的效果

    <style>
      main {
        padding: 80px 0px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
      }

      .progress-outer {
        width: 60%;
        height: 12px;
        border-radius: 8px;
        /* background-color: pink; */
        overflow: hidden;
        position: relative;
      }

      .progress-enter {
        height: inherit;
        background: rgba(180, 160, 120, .2);
      }

      .progress-bg {
        width: 60%;
        height: inherit;
        border-radius: 6px;
        background: repeating-linear-gradient(-45deg, #D9CFBB 25%, #C3B393 0, #C3B393 50%,
            #D9CFBB 0, #D9CFBB 75%, #C3B393 0);
        background-size: 16px 16px;
        animation: panoramic 20s linear infinite;
      }

      @keyframes panoramic {
        to {
          background-position: 200% 0;
        }
      }

    </style>
   <main>
      <div class="progress-outer">
        <!--更好的扩展-->
        <div class="progress-enter">
          <div class="progress-bg"></div>
        </div>
        <!-- <span>60%</span> -->
      </div>
    </main>

radial-gradient函数

属于background-image属性,border之下,background-color之上

理解

radial-gradient() 径向渐变函数,CSS函数创建一个图像,该图像是由从原点发出的两种或多种颜色之间的逐步过渡组成的,他的形状是圆形或椭圆形
重复的径向渐变函数:repeating-radial-gradient()


滚动条

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    ::-webkit-scrollbar {

      display: none
    }
  </style>
</head>

<body>
  <div style=" width:200px; height: 200px; overflow-y: scroll;">

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

    ckidzhh<br />

  </div>
</body>

</html>

面试题

如何实现左侧宽度固定,右侧宽度自适应的布局

小提示:这个问题面试官会要求说出几种解决方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值