zoukankan      html  css  js  c++  java
  • CSS(六)-- 布局(元素的层级),字体

    1.层级

    • 对于开启了定位的元素,可以通过z-index属性来指定元素的层级

    • z-index需要一个整数作为参数,值越大元素的层级越高,元素的层级越高越优先显示

    • 如果元素的层级一样,则优先显示靠下的元素

    • 祖先元素的层级再高也不会盖住后代元素

    2.字体相关

    2.1字体相关的样式

    (https://blog.csdn.net/mxd395/article/details/24324557)

    color:用来设置字体的颜色

    font-size:字体大小

    • font-size相关的单位
      • em:相当于当前元素的一个font-size,2em=2*font-size
      • rem:相当于根元素(html)的一个font-size;

    font-weight:字重(字体的加粗)

    • 可选值:
      • normal(默认值):不加粗
      • bold 加粗

    font-style:字体的风格

    • 可选值:
      • normal:正常
      • italic:斜体

    font-family:字体族(字体的分类)

    • 可选值
      serif 衬线字体
      sans-serif 非衬线字体
      monospace 等宽字体
      cursive 草书 字体
      fantasy 加粗字体

    字体族可以有多个
    font-family:'Courier New',Courier,monospace;//当电脑没有‘Courier New’就用Courier,依次往下推

    • 如何让用户使用服务器上的字体fontface
      font-face可以将服务器中的字体直接提供给用户去使用
      @font-size{
      /指定字体的名字(自定义)/
      font-family: "myfont";
      /服务器中字体的路径/
      src: url('./font/ZCOOOLXiaoMei-Rugular.ttf');
      }

    font-stretch

    控制字体中实际字母的宽度

    font-variant

    指定字体中是否正常的,或者是小型大写字母

    font-size-adjust

    修改字体字符的尺寸比

    2.2图标字体

    • 在网页中经常需要使用一些图标,可以通过图片来引入图标,但是图片比较大,并且不灵活
    • 所以在使用图标时,可以将图标设置为字体
    • 然后通过font-face的形式来对字体进行引入,就可以通过使用字体的形式来使用图标

    fontawesome使用步骤

    1.下载 https://fontawesome.com/
    2.解压
    3.将css和webfonts移动到项目中
    4.将all.css引入到网页中
    5.使用图标字体

    • 直接通过类名来使用图标字体
    直接通过类名来使用图标字体
    class="fas fa-ell"
    class="fab fa-accessible-icon"
    前边的fas/fab是固定结构,fa-eel是查询文档后的具体key
    

    Awesome图标字体的使用方式

    • 通过类来设置图标
      <li><i class="fas fa-star"></i>aa</li>
    • 通过伪元素来设置图标字体
      • 找到要设置图标的元素通过before或after选中
      • 在content中设置字体的编码
      • 设置字体的样式:font-family:‘Font Awesome 5 Brands’;
        给每一列加上图标
    <style>
          li{
                list-style:none;
          }
          /*使用伪元素*/
          li::before{
                content:'f1b0';
                font-family:'Font Awesome 5 Free';//要确定字体,通常在文档里面找
          }
    </style>
    <ul>
          <li>q</li>
          <li>w</li>
          <li>e</li>
          <li>r</li>
    </ul>
    
    • 通过实体来使用图标字体
      &#x图标的编码;

    IconFont矢量图标使用

    • 进入网站iconfont
    • 登录
    • 将想要的图标加入购物车
    • 点开购物车
    • 点击添加至项目
    • 会自动跳转至我的项目
      • 点击生成在线链接,可以直接使用
      • 点击下载至本地
        • 打开文件,内容如下
        • 使用方法:点击demo_index.html会有使用方法说明

    2.3行高line-height

    • 行高是指文字占有的实际高度,可以通过line-height来设置行高

    • 行高可以直接指定一个大小(px,em)

    • 也可以为行高设置一个整数

      • 如果是一个整数的话,行高将会是字体(font-size)的指定的倍数
    • 行高经常还用来设置文字的行间距

      • 行间距=行高 - 字体的大小
    • 字体框

      • 字体框就是字体存在的格子,设置font-size实际上就是在设置字体,框的高度
    • 行高会在字体框的上下平均分配

    • 可以将行高设置位和高度一样的值,使单行文字在一个元素中垂直居中

    2.4字体的简写属性font

    font 可以设置字体相关的所有属性

    • 语法:自重(可不写) 字的风格(可不写) 字体大小/行高 字体族
    font:bold italic 50px/2 微软雅黑,'Times'
    
    • 如果不写行高,自重,字的风格(font-style)会使用默认值

    3.文本的样式

    3.1 文本的水平和垂直对齐

    水平对齐text-align

    可选值:

    • left 左侧对齐
    • right 右对齐
    • center 居中对齐
    • justify 两端对齐

    垂直对齐vertical-align

    设置元素垂直对齐的方式,是在子元素中设置

    • 可选值:
      • baseline(默认值):基线对齐(根据字体设计的不同而不同)
      • top:顶部对齐
      • bootom:底部对齐
      • middl:居中对齐

    用途:让图片底部没有空隙

    • 添加前:img沿着图片基线对其


    下面有空隙

    • 添加后:

    没有空隙

    用bottom,middle也行,别让其沿着基线对其即可

    设置文本修饰text-decoration

    可选项:

    • 第一个参数:
      • none (默认值):什么都没有
      • underline:下划线
      • line-through:删除线
      • overline:上划线
    • 第二个参数(不适用于IE):可以设置颜色
    • 第三个参数(IE不支持):指定边框样式
    text-decoration:underline red dotted;
    

    设置网页如何处理空白white-space

    • 可选值:
      • normal(默认):正常
      • nowrap:不换行(会出现横向滚动条)
      • pre:保留空白(取消将多个空格自动变为一个空格,写什么就是什么,不做任何处理)

    设置文本溢出text-overflow

    • 可选值
      • ellipsis;溢出部分用省略号代替

    实现溢出内容省略并加上省略号的效果

    <style>
          .box2{
                200px;
                white-space:nowrap;
                overflow:hidden;
                text-overflow:ellipsis;
          }
    </style>
    <div class="box2">
    asfwagasgdfagdshsgdhsdhgfdhfchggfdhfhdjd
    </div>
    

    4.练习

    4.1京东顶部导航条

    • 行内元素不支持宽高

    • background-clip:content-box;
      将背景颜色设置到内容区,边框和内边距不再有背景颜色

    • background-color:transparent设置为透明

  • 相关阅读:
    Oracle-函数-split 和 splitstr 的创建
    git merge方法
    查看Android 设备进程id
    内存泄漏
    Mac显示隐藏文件快捷键
    gradle版本
    commit单一文件
    21不下发信号
    FileInputStream read函数何时返回-1
    maven turbonet目录
  • 原文地址:https://www.cnblogs.com/psyduck/p/14319671.html
Copyright © 2011-2022 走看看