关于渐进增强和优雅退化的一个小demo

其实我觉得渐进增强和优雅退化,表达的是一个意思.

在写某些 html 结构的时候,先要从满足最基本的功能开始.

然后再慢慢的增强.

比如下面这个例子.

一个淘宝网的logo,利用a标签设置背景图片.

image.png

按照上述的说法,书写的步骤应该是:

  • 先写a标签,满足没有样式时,也可以正常点击.
  • 然后再去处理图片以及其他样式功能。

step 1.先写正常的a标签

<a class="logo" href="https://www.taobao.com">淘宝网</a>

step 2.设置背景图片

//.css
.logo {
     background-image: url(https://img.alicdn.com/tfs/TB1_uT8a5ERMeJjSspiXXbZLFXa-143-59.png);
  width: 143px;
  height: 59px;
}

到这一步,界面显示的呈现出这个样子.

image.png

但这个不符合渐进增强,样式已经载下来了,我们就应该利用样式把文字隐藏起来。

.logo {
  background-image: url(https://img.alicdn.com/tfs/TB1_uT8a5ERMeJjSspiXXbZLFXa-143-59.png);
  width: 143px;
  height: 59px;
  display: inline-block;
  text-indent: 143px;
  white-space: nowrap;
  overflow: hidden;
}

呈现下面这个样子:

image.png

step 3.注释样式,模拟样式没有下载下来的情况.

/* .logo {
  background-image: url(https://img.alicdn.com/tfs/TB1_uT8a5ERMeJjSspiXXbZLFXa-143-59.png);
  width: 143px;
  height: 59px;
  display: inline-block;
  text-indent: 143px;
  white-space: nowrap;
  overflow: hidden;
} */
image.png

这里的渐进增强:普通a标签 ---> 带有背景图片的a标签
优雅退化:带有图片的a标签可以点击 ---> 普通的a标签也可以点击.

还有第二种方式,主要是样式的写法不同.

.logo {
  display: inline-block;
  background-image: url(https://img.alicdn.com/tfs/TB1_uT8a5ERMeJjSspiXXbZLFXa-143-59.png);
  width: 143px;
  height: 0px;
  padding-top: 59px;
  overflow: hidden;
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,445评论 1 45
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,703评论 1 92
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,768评论 4 61
  • 罚站 我所在的这个班级学生太淘气了,除了班主任别的任课老师根本压不住课堂,教数学的老师梳着长长的辫子,刚从师专毕业...
    黑龙江冷月阅读 1,715评论 1 0
  • Oracle EBS,是一套很强大的系统,在我们公司的Oracle部门专设了三个小组来分别对这套系统来做研究和实施...
    江户川柯镇恶阅读 1,882评论 0 1

友情链接更多精彩内容