css自问自答(二)

7.掌握定位的一些属性

position 和 display 属性,以及如何浮动(float)和清除(clear)元素,z-index属性

三个属性控制: position 属性、 display 属性和 float 属性。

position属性:控制页面上元素间的位置关系,
display属性:控制元素是堆叠、并排,还是根本不在页面上出现,
float属性:提供控制的方式,以便把元素组成成多栏布局。

8.定位

(1)相对定位

相当于它把自己从原来的包含元素中挣脱出来了,要注意,除了这个元素自己相对于原始位置挪动了一下之外,页面没有发生任何变化。换句话说,这个元素原来占据的空间没有动,其他元素也没动。
多数情况下,只用 top 和 left 就可以实现我们想要的效果
{position:relative; top:25px; left:30px;}

(2)绝对定位

绝对定位会把元素彻底从文档流中拿出来
{position:absolute; top:25px; left:30px;}
绝对定位的元素完全脱离了常规文档流

(3)固定定位

固定定位与绝对定位类似。
{position:fixed; top:30px; left:20px;}
但不同之处在于,固定定位元素的定位上下文是视口(浏览器窗口或手持设备的屏幕),因此它不会随页面滚动而移动。

9.浮动与清除

应用:

一是可以实现传统出版物上那种文字绕排图片的效果
二是可以让原来上下堆叠的块级元素,变成左右并列,从而实现布局中的分栏。

强迫父元素包围其浮动的子元素有三种方式

(1)为父元素应用 overflow:hidden

(2)浮动父元素

(3)在父元素内容的末尾添加非浮动元素,可以直接在标记中加,也可以通过给父元
素添加 clearfix 类来加(当然,样式表中得需要相应的 clearfix 规则)
.clearfix:after {
content:".";
display:block;
height:0;
visibility:hidden;
clear:both;
}

10.厂商前缀

-moz-transform:skewX(-45deg); /* Firefox */
-webkit-transform:skewX(-45deg); /* Chrome 及 Safari */
-ms-transform:skewX(-45deg); /* 微软 Internet Explorer */
-o-transform:skewX(-45deg); /* Opera */
transform:skewX(-45deg); /* 最后是 W3C 标准属性 */ 提示:在一些新的css3属性中需要用上

11.流动布局,固定宽度布局,弹性布局的区别

固定宽度布局

固定宽度布局的大小不会随用户调整浏览器窗口大小而变化,一般是 900 到 1100像素宽。其中 960 像素是最常见的,因为这个宽度适合所有现代显示器,而且能够被 16、 12、 10、 8、 6、 5、 4 和 3 整除,不仅容易计算等宽分栏的数量,而且计算结果也能得到没有小数的像素数。

流动布局

流动布局的大小会随用户调整浏览器窗口大小而变化。这种布局能够更好地适应大屏幕,但同时也意味着放弃对页面某些方面的控制,比如随着页面宽度变化,文本行的长度和页面元素之间的位置关系都可能变化。在各栏宽度加大时通过为内容元素周围添加空白来保持内容居中,而且现在的导航条会在布局变窄到某个宽度时收缩进一个下拉菜单中,从而为内容腾出空间。

弹性布局

弹性布局与流动布局类似,在浏览器窗口变宽时,不仅布局变宽,而且所有内容元素的大小也会变化,让人产生一种所有东西都变大了的感觉。

12.了解响应式设计

响应式网站设计主要是指利用 媒体查询,流动布局和自适应图片等方式,创建的一个在不同屏幕下都能漂亮显示的站点

13.IE条件注释

<!-- HTML 标记 -->
<!-- 只让 IE8 之前的 IE 加载它 -->
<!--[if lt IE 8 ]>
<script src="helpers/borderBoxModel.js"></script>
<![endif]-->

css自问自答(二)的更多相关文章

  1. css自问自答(一)

    css自问自答(一) 1.块级元素和行内元素特性与区别? 块级:display:block <div>.<p>.<h1>...<h6>.<ol&g ...

  2. 区块链自问自答 day2

    区块链自问自答 day2 区块链的自治性是如何达成的?为什么能够在去信任的环境下自由安全地交换数据? ​ 区块链中有众多的节点,包含了恶意节点.故障节点.正常节点,想要这些节点共同做出一致的决定就需要 ...

  3. [python]自问自答:python -m参数?

    python -m xxx.py 作用是:把xxx.py文件当做模块启动 但是我一直不明白当做模块启动到底有什么用.python xxx.py和python -m xxx.py有什么区别! 自问自答: ...

  4. 自问自答之VR遐想

    先让我组织一下语言,作为表达能力超弱的战五渣来讲,归纳总结什么的最要命了. 我可以给你分析个1到N条出来,但是一般来讲没什么顺序,想到什么就说什么.而且我属于线性思维,有一个引子就可以按着话头一步步发 ...

  5. [python]自问自答:python -m参数? (转)

    python -m xxx.py 作用是:把xxx.py文件当做模块启动但是我一直不明白当做模块启动到底有什么用.python xxx.py和python -m xxx.py有什么区别! 自问自答: ...

  6. css小随笔(二)与通用样式

    51先在学校HTML5已经有半个多月了,然后这个星期做了一个京东的手机网站,接触到了通用样式,下面以京东的手机站为例 这两个就是京东手机站了的不同的两个板块,因为HTML5仅仅只是学完了基本标签跟cs ...

  7. [python]自问自答:python -m参数? (转) ( python2.7 版本 )

    原文地址: http://www.cnblogs.com/xueweihan/p/5118222.html python -m xxx.py 作用是:把xxx.py文件当做模块启动 但是我一直不明白当 ...

  8. vue 源码自问自答-响应式原理

    vue 源码自问自答-响应式原理 最近看了 Vue 源码和源码分析类的文章,感觉明白了很多,但是仔细想想却说不出个所以然. 所以打算把自己掌握的知识,试着组织成自己的语言表达出来 不打算平铺直叙的写清 ...

  9. 区块链自问自答 day1

    区块链自问自答 day1 简要介绍区块链是什么? 区块链(Blockchain)是一种对等网络下的分布式数据库系统 ​ 数据结构中的单向链表是通过每个节点包含一个节点的指针实现"链" ...

随机推荐

  1. CSS starts

    I have not written any articles here since I graduated from my university. Now I begin to write down ...

  2. Java虚拟机 - 符号引用和直接引用理解

    java -- JVM的符号引用和直接引用 https://www.zhihu.com/question/50258991 在JVM中类加载过程中,在解析阶段,Java虚拟机会把类的二级制数据中的符号 ...

  3. 理解RESTFul和SOA

    RESTFul:面向资源的架构(roa) RESTFul基于HTTP协议,是一种明确构建在客户端/服务端体系结构上的一种风格, rest是Representational State Transfer ...

  4. BZOJ4566: [Haoi2016]找相同字符(后缀自动机)

    题意 题目链接 Sol 直接在SAM上乱搞 枚举前缀,用SAM统计可以匹配的后缀,具体在匹配的时候维护和当前节点能匹配的最大值 然后再把parent树上的点的贡献也统计上,这部分可以爆跳parent树 ...

  5. 关于CSS的知识

    这两天在学习关于HTML的知识,今天学习到CSS的知识,将自己所收获的知识点归纳一下: 首先, CSS声明学习:                 1.在head标签中使用style标签声明:      ...

  6. marquee 标签的使用介绍

    marquee 实现滚动效果(创建滚动的文本字幕) 1.marquee 支持的属性: (1).behavior设置滚动方式: <marquee behavior="alternate& ...

  7. FineReport中如何用JavaScript自定义地图标签

    在日常使用地图过程中,通常会遇到地图标签,提示点等显示不满足我们的需求,需要进行JavaScript代码编写. 例如:在使用地图过程中,会发现很多地名显示的位置偏离.这时候就需要使用JavaScrip ...

  8. Pwn with File结构体(三)

    前言 本文由 本人 首发于 先知安全技术社区: https://xianzhi.aliyun.com/forum/user/5274 前面介绍了几种 File 结构体的攻击方式,其中包括修改 vtab ...

  9. Android之TabHost实现Tab切换

    TabHost是整个Tab的容器,包含TabWidget和FrameLayout两个部分,TabWidget是每个Tab的表情,FrameLayout是Tab内容. 实现方式有两种: 1.继承TabA ...

  10. 【Java】操作Sqlite数据库

    首先在https://github.com/xerial/sqlite-jdbc下载jar包 import java.sql.Connection; import java.sql.DriverMan ...