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 EBS 配置文件取值
    “嗯...无法访问此页面 尝试此操作.....”的解决方法
    为什么在开发的微信小程序项目里写不上汉字?
    VM1238:2 pages/logs/logs.json 文件解析错误 SyntaxError: Unexpected token / in JSON at position 41....
    allparis工具的使用
    can't open 1.txt at releaseallpairs.pl line 368.
    element.style的样式问题解决方法
    常见的http状态码有哪些,代表什么意思?
    怎样快速修改文件名的后缀
    “该文件没有与之关联的应用来执行操作请安装应用若已安装应用程序请在默认应用设置...”
  • 原文地址:https://www.cnblogs.com/psyduck/p/14319671.html
Copyright © 2011-2022 走看看