组件化CSS--管理你整站的CSS文件
为什么要拆分样式文件?
更易于查找样式规则. 简化维护,方便管理. 还可以针对某一页面提供特定的样式.
为什么要添加桥接样式?
你可以随时添加或移除样式而不需要修改HTML 文档.
为什么要定义两种媒体类型?
NN4 不支持@import ,故识别不到桥接样式.
@import ‘header.css’;
@import ‘content.css’;
@import ‘footer.css’;
@imports 如何工作?
它将所有CSS 规则从一个文件导入到另外一个文件.@import 不能被老的
浏览器所识别.
对于 大型站点 来说,这是一个理想的概念.
Hack-free CSS
处理诸如IE 这样烦人的浏览器 的兼容性是我们最头疼的事儿之一.
很多朋友使用CSS Hack 来解决这些问题.
问题是当IE版本进行升级更替,改进对CSS的支持后,之前使用的hacks将会无效 !
你是怎么解决这个问题 的呢?
“我们要求你在不使用CSS hacks 的情况下更新你的页面.假如你想针对IE或者避开IE,你可以使用条件注释.”
条件注释 如何工作?
步骤一、针对IE,创建一个心得样式文件
步骤二、在HTML文档的开头添加条件注释 代码
只有指定的IE浏览器版本识别这个心的样式,其它的浏览器将会彻底忽略 它.
平常的浏览器识别:(非IE浏览器,如火狐、Chrome等等)
特定IE 版本识别:
举个例子, 大多数浏览器会将补白加进容器的宽度里,但是IE5 不会. 这种情况下,IE5 显示的是一个比较小的容器.
main.css (被包含IE5在内的所有浏览器识别):
#container{ width: 600px; padding: 100px;}
ie5.css (只有IE5识别):
#container {width: 800px; }
为什么条件注释是一个好的解决方案呢?
1. No hacks
特定的CSS 规则仅出现在新的样式表里.
2. 文件分离
针对特定版本的IE 定义的样式脱离了主样式表,可以在IE 浏览器升级更新对属性支持时轻松移除这些文件.
3. 针对性
可对不同版本的IE 浏览器有针对性的进行相关属性的定义。
组件化CSS--管理你整站的CSS文件的更多相关文章
- iOS组件化开发一pod库包含MRC的文件处理(五)
在做项目的过程中,建立了一个私有pod库,在这个库中存在mrc类文件这个时候如果在使用了arc的工程中引用这个pod的工程中手动设置当然也可以就是费时费力.现在我们来看看如何在私有库配置文件里配置自动 ...
- Android组件化之终极方案
Android组件化项目地址:Android组件化项目AndroidModulePattern Fragment或View如何支持组件化 如何管理组件 Fragment或View如何支持组件化 距离 ...
- 如何通过 Vue+Webpack 来做通用的前端组件化架构设计
目录: 1. 架构选型 2. 架构目录介绍 3. 架构说明 4. 招聘消息 目前如果要说比较流行的前端架构哪家强,屈指可数:reactjs.angularjs.emberj ...
- CSS组件化思考
为什么组件化? 分层设计,代码复用,减少冗余: 维护方便,弹性好: 如何组件化? 目前代码分成三级: 第一级粒度最细,是基础,主要包含字体配置,颜色配置,UI框架(比如MUI或者pure.css): ...
- 高效、可维护、组件化的CSS
如何写出更加高效的CSS? 主要有以下四个关键点: 高效的CSS 可维护的CSS 组件化的CSS hack-free CSS 1.书写高效的CSS代码 * 使用 外联样式 替代行间 样式或者内嵌样式. ...
- DEDE整站动态化或整站静态化设置方法,织梦栏目批量静态/动态方法
跟版网建站接到一个朋友提问,100多各栏目全部要从动态变成静态,里面的文章也要静态化,如何更快捷的设置dede的静态化或者动态化呢? 直接用DEDE后台的SQL命令行工具, SQL语句: DEDE整站 ...
- css+js整站变灰(兼容IE7+)
原文:css+js整站变灰(兼容IE7+) 历年大型地震等自然灾害来临过后,各大网站整站都变成灰色以悼念逝去的生命,那么这种整站变灰的效果是怎么做到的? 重写一套css?NO,即便你有这个时间重写,那 ...
- vuex-- Vue.的中心化状态管理方案(vue 组件之间的通信简化机制)
vuex-- Vue.的中心化状态管理方案(vue 组件之间的通信简化机制) 如果你在使用 vue.js , 那么我想你可能会对 vue 组件之间的通信感到崩溃 .vuex就是为了解决组件通信问题的. ...
- (day67)组件、组件化、组件传参、JS补充(命名转换、for in 、数据转换)、css取消选中和模拟小手
目录 一.初识组件 (一)概念 (二)特点 二.组件的分类 (一)根组件 (二)局部组件 (三)全局组件 二.数据组件化 三.组件的传参 (一)父传子 (二)子传父 四.JS补充 (一)与html命名 ...
随机推荐
- T-SQL:SQL Server-数据库查询语句基本查询
ylbtech-SQL Server-Basic:SQL Server-数据库查询语句基本查询 SQL Server 数据库查询语句基本查询. 1,数据库查询语句基本查询 数据库 SQL Serv ...
- Php 笔记2-----手机端 与 php服务器的通信
对于 手机端 和 php服务器的通信,是不存在表单这一概念的 ,除非自己去实现, 所以通常情况下步骤是: 假定上传的是字符串. 1 手机端的流程是 把文件或者字符串,转化为 特定的流. 2 通过h ...
- centos配置中文显示和中文输入
我现在使用虚拟机运行centos,但是安装完成后系统显示英文,而且无法进行中文输入,这使我感到很烦躁,虽然我对自己说,这样可以逼迫自己适应全英文的环境,但作为一个中国人还是难以忍受,所以记录一下解决办 ...
- 独立开发游戏越来越容易:Unity 发布旗下的最新游戏引擎 Unity 5,依然有免费版(转)
独立开发者开发游戏正变得越来越容易,因为在游戏设计中很多吃力不讨好的工作可以直接采用像 Epic Games 或 Unity Technologies 这样的游戏引擎来解决.而这几天,游戏引擎商们先后 ...
- Beginner’s Guide(开始者向导)
This guide gives a basic introduction to nginx and describes some simple tasks that can be done with ...
- String内存陷阱简介
String 方法用于文本分析及大量字符串处理时会对内存性能造成一些影响.可能导致内存占用太大甚至OOM. 一.先介绍一下String对象的内存占用 一般而言,Java 对象在虚拟机的结构如下:•对象 ...
- Windows Server 2003单网卡搭建VPN
Windows Server 2003单网卡搭建VPN 1.打开[控制面板] --> [管理工具] --> [路由和远程访问] 2.鼠标右击你要管理的电脑 在弹出式菜单中选中[配置并启 ...
- 使用Ambari部署hadoop集群
准备工作 1. 设置sudo免密码登陆 由于CentOS安装之后,普通用户无sudo权限,故应该设置sudo权限. 参考文章:http://www.cnblogs.com/maybob/p/32988 ...
- Linux配置静态IP
在一块SSD的CentOS配置静态IP 1. 配置静态IP #vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" ...
- 【转】Hive导入10G数据的测试
原博文出自于: http://blog.fens.me/hadoop-hive-10g/ 感谢! Hive导入10G数据的测试 让Hadoop跑在云端系列文章,介绍了如何整合虚拟化和Hadoop,让H ...