css常规问题

/*有三种状况将使得元素离开文档流而存在,分别是浮动、绝对定位、固定定位(脱离文档流没有撑大父元素)*/

/******************************上下文选择付************************************


Contextual selectors are very selective

This example shows how to target a specific tag.

Contextual selectors are very useful!

p img{}

.specialtext.featured两个类名之间没有空格,因为我们只想选择同时具有这两个类

名的那个元素。如果你加了空格,那就变成了“祖先/后代”关系的上下文选择符了。******/

/*******************************block************************************

一:块级元素(block)特性:1]不设置宽度时,宽度为父元素宽度

                    [2]独占一行

 [3]支持宽高

不支持的样式】

                              [1]vertical-align

                                总是独占一行,表现为另起一行开始,而且其后的元素也必须另起一行显示;

宽度(width)、高度(height)、内边距(padding)和外边距(margin)都可控制;

内联元素(inline)特性:

            和相邻的内联元素在同一行;

宽度(width)、高度(height)、内边距的top/bottom(padding-top/padding-bottom)和外边距的                                                              top/bottom(margin-top/margin-bottom)都不可改变,就是里面文字或图片的大小;

块级元素主要有:address , blockquote , center , dir , div , dl , fieldset , form , h1 , h2 , h3 ,

h4 , h5 , h6 , hr , isindex , menu , noframes , noscript , ol , p , pre , table , ul , li***************/

/*****************************内联元素主要有:inline**************************************

内联元素主要有:inline

a , abbr , acronym , b , bdo , big , br , cite , code , dfn , em , font , i , img ,

input , kbd , label , q , s , samp , select , small , span , strike , strong , sub , sup ,

textarea , tt , u , var

 [1]内容撑开宽度

  [2]非独占一行

      [3]不支持宽高

            [4]代码换行被解析成空格

              不支持的样式:[1]background-position

                          [2]clear

                                [3]clip

                                    [4]height | max-height | min-height

                                          [5]width | max-width | min-width

                                              [6]overflow

                                                    [7]text-align

                                                        [8]text-indent

                                                              [9]text-overflow

4.display:inline:转为行内元素;display:block;转为块级元素***************/

/****************************inline-block***************************************

inline-block

【特征】

   [1]不设置宽度时,内容撑开宽度  [2]非独占一行    [3]支持宽高        [4]代码换行被解析成空格<img><input><keygen><meter><object><progress><select><textarea><video>

          【不支持的样式】[1]clear

5.CSS类名,id名不区分大小写*******/

/********************************position**************************************

position:

1.relativlayaut:相对定位:相当于自己原始位置开始定位,以前的位置不被占用,空在那里(测试没有变成块级元素

,位置可通过top之类来变化但是,宽高设置没作用)依然是文档流2.position:绝对定位:元素框从文档流完全删除,元素原先在文档流中所占位置完全关闭, 就好像以前不存在

生成一个快级框(测试变成了块级元素),对该元素最近的那个脱离了文档流的元素的定位,如果没有父元素,则相对于body定位

            而其层叠通过z-index属性定义(只能设置absolute和relativlayout)

3.  固定定位:即完全离开文档流,相关于视区进行偏移。****/

/********************************float清理浮动****************************************

浮动产生的问题1. 背景不能显示2、边框不能撑开3、margin padding设置值不能正确显示4.若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构

测试发现在不设置父布局高度的情况下 清除浮动,让父布局的高度自适应,将下面的代码放到浮动的父布局里面,就可以清除浮动/**清理浮动.clearfix:after {

content: "";

display: block;

clear: both;

}

.clearfix {

zoom: 1;

}

(如果一个子元素加上清除浮动,整个高度变成哪一行最高的高度)

二。 overflow: hidden;清除浮动为什么加入overflow:hidden即可清除浮动呢?那是因为overflow:hidden属性相当于是让父级紧贴内容,

              这样即可紧贴其对象内内容(包括使用float的div盒子),从而实现了清除浮动(不能在下拉菜单的顶级元素上应用overflow:hidden,否则作为其子元素的下拉菜单就不会显示了)**/

/********************************替换元素:*****************************************

  替换元素:

替换元素是浏览器根据其标签的元素与属性来判断显示具体的内容。

                                                          浏览器将把这段内容直接显示出来*/

/**********************************************BFC****************************************

  BFC的创建方法: 根元素或其它包含它的元素;浮动 (元素的float不为none); 绝对定位元素 (元素的position为absolute或fixed);

行内块inline-blocks(元素的 display: inline-block);表格单元格(元素的display: table-cell,HTML表格单元格默认属性); overflow的值不为visible的元素; 弹性盒 flex boxes (元素的display: flex或inline-flex);

但其中,最常见的就是overflow:hidden、float:left/right、position:absolute。也就是说,每次看到这些属性的时候,就代表了该元素以及创建了一个BFC了

简单归纳一下: 内部的盒会在垂直方向一个接一个排列(可以看作BFC中有一个的常规流); 处于同一个BFC中的元素相互影响,可能会发生margin collapse;

每个元素的margin box的左边,与容器块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此;  BFC就是页面上的一个隔离的独立容器,

容器里面的子元素不会影响到外面的元素,反之亦然; 计算BFC的高度时,考虑BFC所包含的所有元素,连浮动元素也参与计算;

浮动盒区域不叠加到BFC上;*/

/********************************************字符间距****************************************************************************/

/**vertical-align************************************************************

默认情况下支持vertical-align的有图片,按钮,文字,单元格(支持inline,inline-block不支持block

1.table-cell:只有自身设置display:teble-cell;vertival-align:middle才会居中,因为)

2.vertival-align百分比是通过行高计算的比如line-height=30px,vertival-align:10%就是

亲自试验:

    回到拉萨xyzj


1.vertical-align: baseline是基线对齐3px

2.top:图片的行高和“整个框”的行高对齐(bottom一样的道理)3.text-top“文字行内框的顶部”和图片顶部对齐(text-bottom一样的道理)4.middle文字和图片的中线对齐5..test{vertical-align:-2px;}

 元素相对于基线向下偏移两像素,这个常常用来修复单选框/复选框与12像素文字大小不对齐的问题6.父元素(inline-block\block)必须含有line-height(inline元素有无皆可),子元素中的(inline-block/inline元素)vertical-align才能起作用。vertical-align不可继承,必须对子元素单独设置。。

:7.对于一个inline-block元素,如果内部没有inline内联元素(感觉就是没有内容空的)0,

或者overflow不是visible,则该元素的基线就是它margin的底边缘

,否则就是元素内部最后一行内联元素的基线。简单地就以上这种情况来说,没有内容的demo2会基于它的margin底边缘也就是

它的下边缘对齐,而包含内容的demo1和demo3会基于其内部内联元素的基线对齐,所以会造成这种一上一下的情况8.解决办法

设置所有内联元素 vertical-align: top/middle/bottom; 属性,改变默认设置*/

/************line-height**********************************************

 line-height行高是指文本行基线之间的距离。行高line-height实际上只影响行内元素和其他行内内容,

而不会直接影响块级元素,也可以为一个块级元素设置line-height,但这个值只是应用到块级元素的内联内容时才会有影响。

在应用到块级元素时,line-height定义了元素文本基线之间的最小距离,即最小行高

  [注意]如果块级元素中的某一个子级内联元素设置的行高比最小行高大,则行框以设置行高来渲染;如果小,

则以最小行高来渲染。因为,每一个子级内联元素的行高都是行内框的高度,只有一行中所有的行内元素(包括代表父级元素的匿名文本)

颠三倒四,最大的行内框高度才能成为整行的行高*/

/*******************发的***大小写转换;text-transform: capitalize;首字母大写(none、uppercase、lowercase)***************************************************************/

/******************************为元素

一个冒号(:)表示伪类,两个冒号(::)表示CSS3 新增的伪元素。尽管浏览器目

前都支持对CSS 1 和CSS 2 的伪元素使用一个冒号,但希望你能习惯于用双冒号代

替单冒号,因为这些单冒号的伪元素最终可能都会被淘汰掉。2.:first-child 和:last-child,:nth-child(n)(n表示第几个)3.::first-letter第一个字母,,,::first-line第一行*******************************************/

/**********************设置盒子宽度和不设置盒子宽度的不同********************为“设定了宽度”的盒子添加边框、内边距和外边距,会导致盒子扩展

得更宽。实际上,盒子的width 属性设定的只是“盒子内容区的宽度”,而非盒子要占

据的水平宽度。*******************************************/

/********************************现行渐变*****************************

默认为从上到下gradient1 {

background:linear-gradient(#e86a43, #fff);

}

例2:从左到右.gradient2 {

background:linear-gradient(left, #64d1dd, #fff);

}

例3:左上到右下.gradient3 {

background:linear-gradient(-45deg, #e86a43, #fff);**************************************/

/***************;box-sizing: border-box

如果不设置的时候,当一个div的宽高是一个定值,我们再去设置padding,margin,border的时候,整个狂会变大,设置;box-sizing: border-box之后

就不会,只是内容会自己调试挤压************************************************************************************/

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

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,725评论 1 92
  • CSS 是什么 css(Cascading Style Sheets),层叠样式表,选择器{属性:值;属性:值}h...
    崔敏嫣阅读 1,469评论 0 5
  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 2,219评论 0 8
  • oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键 ...
    逍遥至尊灬寳阅读 1,229评论 0 43
  • Web前端开发精品课读书笔记[toc] HTML与CSS进阶教程 小知识 最新HTML标准文档说明简化, 大小写不...
    hi句身阅读 396评论 0 0