【前端攻略--HTML/CSS】边框、文字效果与字体图标实例介绍

2019-07-10 17:51:40 浏览数 (1)

边框加盒子阴影,通过一个小案例实现,具体代码已备注,扩展可自查资料

未把鼠标移入之前效果:

把鼠标移入后效果如下:

具体代码实现如下:

代码语言:javascript复制
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title></title>
    <style type="text/css">
      *{
        /*content-box*/
        /*content-box,宽高仅仅只是内容宽高,border-box,宽高是内容的宽高 内边距的宽度 边框的宽度*/
        box-sizing: border-box;
      }
      #div1{
        width: 600px;
        height: 400px;
        margin: 0 auto;
        /*border: 边框的宽度 边框的样式 边框的颜色 ;统一的综合设置*/
        /*下边框的综合设置*/
        border-bottom: 2px solid salmon;
        /*边框的宽度*/
        border-bottom-width: 10px;
        /*边框的样式*/
        border-bottom-style: double;
        /*边框的颜色*/
        border-bottom-color: skyblue;
        
        border-radius: 20px;
        transition: all .5s;
        
        
      }
      #div1:hover{
        /*盒子的阴影*/
        /*语法:水平偏移值(向右偏移为正) 垂直偏移值(向下偏移为正)实打实的阴影  模糊度(像素越大,模糊面积就越大) 阴影的颜色色值*/
        box-shadow: 0px 0px 20px red,0px 0px 40px #FA8072,0px 0px 40px yellow;
      }
</style>
  </head>
  <body>
    <div id="div1">
      
    </div>
  </body>
</html>

文字效果,通过一个小案例实现,具体代码已备注,扩展可自查资料

具体代码实现如下:

代码语言:javascript复制
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
      h1{
        text-align: center;
        /*字体尺寸*/
        font-size: 100px;
        /*字体*/
        font-family: "微软雅黑";
        /*字体粗细,100(最细)-900(最初),真正还是要看系统是否自带了粗细的字体*/
        /*lighter bold bolder,系统是否自带了粗细的字体*/
        font-weight: 500;
        /*设置斜体*/
        font-style: italic;
        /*颜色设置*/
        color: white;
        /*设置文字的阴影*/
        /*text-shadow:0 0  10px #444, 0 0 20px #777, 0 0 30px #aaa, 0 0 40px #ccc ;*/
        /*text-shadow:水平偏移值 垂直偏移值 模糊度 色值*/
        text-shadow:10px 10px  10px #444, 10px 10px 20px #777, 10px 10px 30px #aaa, 10px 10px 40px #ccc ;
        
      }
</style>
  </head>
  <body>
    <h1>HelloWorld</h1>
  </body>
</html>

字体图标:

字体:实际上是长得像图标的字体,占用的空间小,消耗的带宽小,能够更快的显示页面。字体是矢量的,所以不会失真,可以按照字体一样设置字体颜色和大小。

上阿里巴巴矢量图标库http://www.iconfont.cn/下载字体图标,选择添加到库,在库里统一下载到本地,别直接下载图片。


unicode引用

unicode是字体在网页端最原始的应用方式,特点是:

  • 兼容性最好,支持ie6 ,及所有现代浏览器。
  • 支持按字体的方式去动态调整图标大小,颜色等等。
  • 但是因为是字体,所以不支持多色。只能使用平台里单色的图标,就算项目里有多色图标也会自动去色。

注意:新版iconfont支持多色图标,这些多色图标在unicode模式下将不能使用,如果有需求建议使用symbol的引用方式

unicode使用步骤如下:

第一步:拷贝项目下面生成的font-face

代码语言:javascript复制
@font-face {
  font-family: 'iconfont';
  src: url('iconfont.eot');
  src: url('iconfont.eot?#iefix') format('embedded-opentype'),
  url('iconfont.woff') format('woff'),
  url('iconfont.ttf') format('truetype'),
  url('iconfont.svg#iconfont') format('svg');
}

第二步:定义使用iconfont的样式

代码语言:javascript复制
.iconfont{
  font-family:"iconfont" !important;
}

第三步:挑选相应图标并获取字体编码,应用于页面

代码语言:javascript复制
<i class="iconfont">&#x33;</i>

"iconfont"是你项目下的font-family。可以通过编辑项目查看,默认是"iconfont"。


font-class引用

font-class是unicode使用方式的一种变种,主要是解决unicode书写不直观,语意不明确的问题。

与unicode使用方式相比,具有如下特点:

  • 兼容性良好,支持ie8 ,及所有现代浏览器。
  • 相比于unicode语意明确,书写更直观。可以很容易分辨这个icon是什么。
  • 因为使用class来定义图标,所以当要替换图标时,只需要修改class里面的unicode引用。
  • 不过因为本质上还是使用的字体,所以多色图标还是不支持的。

使用步骤如下:

第一步:引入项目下面生成的fontclass代码:

代码语言:javascript复制
<link rel="stylesheet" type="text/css" href="./iconfont.css">

第二步:挑选相应图标并获取类名,应用于页面:

代码语言:javascript复制
<i class="iconfont icon-xxx"></i>

"iconfont"是你项目下的font-family。可以通过编辑项目查看,默认是"iconfont"。


symbol引用

这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。

这种用法其实是做了一个svg的集合,与另外两种相比具有如下特点:

  • 支持多色图标了,不再受单色限制。
  • 通过一些技巧,支持像字体那样,通过font-size,color来调整样式。
  • 兼容性较差,支持 ie9 ,及现代浏览器。
  • 浏览器渲染svg的性能一般,还不如png。

使用步骤如下:

第一步:引入项目下面生成的symbol代码:

代码语言:javascript复制
<script src="./iconfont.js"></script>

第二步:加入通用css代码(引入一次就行):

代码语言:javascript复制
<style type="text/css">
.icon {
   width: 1em; height: 1em;
   vertical-align: -0.15em;
   fill: currentColor;
   overflow: hidden;
}
</style>

第三步:挑选相应图标并获取类名,应用于页面:

代码语言:javascript复制
<svg class="icon" aria-hidden="true">
  <use xlink:href="#icon-xxx"></use>
</svg>
svg

0 人点赞