精灵图、字体图标、css三角和用户界面样式

b站黑马前端pink老师前端入门教程笔记

1. 精灵图

在这里插入图片描述

案例:拼出自己名字

<span class="p">p</span>
<span class="i">i</span>
<span class="n">n</span>
<span class="k">k</span>
span {
    display: inline-block;
    background: url(images/abcd.jpg) no-repeat;
}
.p {
    width: 100px;
    height: 112px;
    /* background-color: pink; */
    background-position:  -493px -276px;
}
.i {
    width: 60px;
    height: 108px;
    /* background-color: pink; */
    background-position: -327px -142px;
}
.n {
    width: 108px;
    height: 109px;
    /* background-color: pink; */
    background-position: -215px -141px;
}
.k {
    width: 105px;
    height: 114px;
    /* background-color: pink; */
    background-position: -495px -142px;
}

2. 字体图标

字体图标的产生

字体图标使用场景: 主要用于显示网页中通用、常用的一些小图标。

精灵图缺点:1.图片文件比较大。2.图片本身放大和缩小会失真。3.一旦图片制作完毕想要更换非常复杂。

字体图标 iconfont解决了以上问题。提供一种方便高效的图标使用方式,
展示的是图标,本质属于字体

在这里插入图片描述
总结:

1.如果遇到一些结构和样式比较简单的小图标,就用字体图标。

2.如果遇到一些结构和样式复杂一点的小图片,就用精灵图。

字体图标下载(详情见b站pink老师前端视频p258)

  • icomoon 字库 http://icomoon.io

  • 阿里 iconfont 字库 http://www.iconfont.cn/ 免费

字体图标引入

  1. 把下载包里面的 fonts 文件夹放入页面根目录下
  • 字体文件格式
    在这里插入图片描述

2.在 CSS 样式中全局声明字体: 把这些字体文件通过css引入到我们页面中。

<style>
        @font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?mlsl5d');
  src:  url('fonts/icomoon.eot?mlsl5d#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?mlsl5d') format('truetype'),
    url('fonts/icomoon.woff?mlsl5d') format('woff'),
    url('fonts/icomoon.svg?mlsl5d#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
    </style>
  1. html 标签内添加小图标。
  2. 给标签定义字体。
 span {
   font-family: "icomoon";
 }

注意:这个字体一定要和上面@font-face里面的字体保持一致

字体图标追加

把压缩包里面的 selection.json 从新上传,然后选中自己想要新的图标,重新下载压缩包,并替换原来的文件即可。

3. CSS 三角

网页中常见一些三角形,使用 CSS 直接画出来就可以,不必做成图片或者字体图标。

CSS 三角做法如下:

在这里插入图片描述

 div {
 	width: 0; 
    height: 0;
    border: 50px solid transparent;
	border-color: red green blue black;
	/*照顾兼容性*/
	line-height:0;
    font-size: 0;
 }
  1. 我们用css 边框可以模拟三角效果
  2. 宽度高度为0
  3. 我们4个边框都要写, 只保留需要的边框颜色,其余的不能省略,都改为 transparent 透明就好了
  4. 为了照顾兼容性 低版本的浏览器,加上 font-size: 0; line-height: 0;

案例:京东三角

在这里插入图片描述

    <title>CSS 三角制作</title>
    <style>
        .jd {
            position: relative;
            width: 120px;
            height: 249px;
            background-color: pink;
        }
        .jd span {
            position: absolute;
            right: 15px;
            top: -10px;
            
            width: 0;
            height: 0;
            border: 5px solid transparent;
            border-bottom-color: pink; 
            
            line-height: 0;  
            font-size: 0;
            }
    </style>
</head>
<body>
    <div class="jd">
        <span></span>
    </div>
</body>

4. CSS 用户界面样式

所谓的界面样式,就是更改一些用户操作样式,以便提高更好的用户体验。

鼠标样式 cursor

 li {
 	cursor: pointer; 
 }

设置或检索在对象上移动的鼠标指针采用何种系统预定义的光标形状。

在这里插入图片描述

轮廓线 outline

给表单添加 outline: 0; 或者 outline: none; 样式之后,就可以去掉默认的蓝色边框。

 input {
 	outline: none; 
 }

防止拖拽文本域 resize

实际开发中,我们文本域右下角是不可以拖拽的。

 textarea{ 
 	resize: none;
 }
  • 18
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值