[前端学习]css部分学习笔记,第十一天

css兼容性

  • css兼容性说白了就是为了照顾旧版本的浏览器,因为新版本的浏览器都很符合w3c规范。针对不同浏览器,书写不同的样式,并通过脚本来判断浏览器版本,来显示效果。主要是通过css hack来实现。

属性hack

  • 前置hack(注意:所有属性都可以这样设置)
    • _color: red; ie6专属,只有ie6才会应用
    • *color: red;只有ie7及其以下才会应用
  • 后置hack
    • color: red\9; 只针对ie6-10有效
    • color: red\0;只针对ie8-10有效
    • color: red\9\0; 只针对ie9-10有效
    • color: red!important 这是提高css权重的,但这种设置方法只有ie7及其以上和其他浏览器识别,ie6不识别
    • 正常的书写顺序是:正常 * _ 先正常再局部,保证层叠正常。

选择器hack

  • 与属性hack应用单个属性不同,选择器hack可以应用到整个选择器
  • *html 选择器 {} 在选择器前加了*html就只有ie6会识别并应用样式
  • *+html 选择器 {} 在选择器前加了*+html就只有ie7会识别并应用样式
  • 媒体选择器暂时还没学,等学了css3之后再来补充

条件注释语法

  • <! -- [if ie 版本]>判断内容;<![ end if] -->
  • <! -- [if gte ie 版本]>判断内容;<![end if] -->
    • gte是大于等于;gt是大于;lte是小于等于;lt是小于
  • <! -- [if ! ie] --><! -->判断内容;<! -- <! --[end if]--> ie10以上和非ie浏览器
  • 这些语句大多数ie10以上都不再支持了,如果需要为低版本ie专门写一套css可以通过这样的方法来判断并引入css文件。

css常见BUG

  • ie6浏览器浮动盒子设置margin会出现双倍外边距问题,解决方法:display:inline-block,转换为行内块元素
  • ie6设置高度小于19px会默认19px的问题,解决方法:设置overflow:hidden(推荐)、height:0;、font-size:0、line-height:0;
  • ie7及其以下版本,li标签里两个以上元素浮动,会让每个li标签之间有空白缝隙。解放方法与图片缝隙类似,用vertical-align设置非默认值(baseline)的值即可。
  • ie6使用奇数宽高会出现定位不精确的BUG,解决方法没有,只能尽量避免,设置宽高用偶数值
  • ie6盒子尽管设置了宽和高,但内容超出时,会自动撑开盒子高度。解决方法是:overflow:hidden。

闯关题总结

  • 边框如果不设置颜色和样式,不管多粗都不会显示
  • background属性不会继承
  • !doctype不是html标签
  • radio和checkbox默认值是checked="checked"
  • margin和padding设置百分比值都是参考父元素的width
  • 如果给当前元素设置z-index,那么它的伪元素z-index会失效,要避免

BFC介绍与作用

  • block formatting context 直译过来就是块级格式化上下,它是一块渲染的区域,在区域内部盒子不管怎么调都可以,不会影响到外部的盒子,它的模式与清除浮动相似。
  • display:block|list-item|table可以具备触发BFC的条件,它们都有一个共同的特性,由内容、内边距、边框、外边距组成。

触发BFC的条件

  • 设置了float且值不为none
  • 设置absolute或者fixed
  • 设置了display:inline-block|table-cell|table-caption|flex|inline-flex
  • overflow值不为visible

成为BFC元素具有的特性

  • 内部盒子从顶部开始,垂直的一个一个的排列
  • 盒子垂直方向设置外边距时,会出现外边距合并
  • 内部盒子的边缘会触碰到父盒子边框的内部边缘
  • BFC区域不会和浮动盒子产生交集,而是贴在浮动盒子边缘,简单说就是不会再被浮动的盒子压住。
  • 计算盒子高度时,会把浮动盒子的高度也计算上(与清除浮动相同的功能)

成为BFC元素的作用

  • 清除浮动,根据BFC的第五的特性。
  • 解决外边距合并。既然同一个BFC区域的盒子垂直外边距会合并,那么反过来想,让垂直相邻的两个盒子不在同一个BFC区域不就不会合并了吗?所以给其中一个盒子再设置一个BFC触发条件(最喜欢用overflow:hidden来设置),就可以解决外边距合并。
  • 制作右侧自适应盒子。因为特性,BFC区域不会与浮动盒子发生交集,这样可用通过给上方的盒子设置浮动,下方盒子触发BFC而形成右侧自适应盒子的效果。简单说就是,BFC区域会跑到浮动盒子右边与顶线对齐,浮动盒子大小发生变化,BFC区域自动变化宽度,让内容也同时变化,实现自适应的效果。(可能不好理解,动手试试就理解了。)

绝对定位对齐右侧版心

  • left:50%,然后往右走版心的一半距离即可,即:margin-left:版心一半距离

背景透明和元素透明

  • background: rgba(0,0,0,.1-1) 背景透明顾名思义,只设置背景颜色或者背景图片透明,不影响内容。
  • opacity:0-1 元素透明,元素内的所有内容包括背景都设置透明
  • filter:alpha(opacity:1-100) 这个只针对IE的旧版本,因为它们不认识上面两个

优雅降级和渐进增强

  • 它们是一种布局思路,正好相反。优雅降级是以最新的浏览器版本为准来布局,然后通过一些调整来兼容低版本浏览器。而渐进增强是以低版本为准。
  • 现在一般是优雅降级比较多。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,902评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,037评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,978评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,867评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,763评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,104评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,565评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,236评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,379评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,313评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,363评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,034评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,637评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,719评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,952评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,371评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,948评论 2 341

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,721评论 1 92
  • 1.CSS基本概念 1.1 CSS的定义 CSS(Cascading Style Sheets)层叠样式表,主要用...
    寥寥十一阅读 1,800评论 0 6
  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 2,219评论 0 8
  • 转载请声明 原文链接地址 关注公众号获取更多资讯 第一部分 HTML 第一章 职业规划和前景 职业方向规划定位...
    程序员poetry阅读 16,507评论 32 459
  • 端午我回了家 家里有温存 这种温存也正是我懈怠下来找的借口 我痛经两天 把本可以忍受作成呼天抢地 喝了药又吃了止痛...
    4948c28a5457阅读 230评论 0 0