CSS

以下只是少数的知识点 没有系统的描述


css中一个很重要的作用就是布局html中的元素(认准自己的位置)

定位(position属性)

一般的不同的标签都有默认的布局:

标签都是按普通流布局(从上到下,从左到右)+盒子模型(padding border margin)+ width/height(这个情况比较复杂)

  • block元素(div nav header footer article aside p):独占一行 width/height 都可以设置

  • incline元素(a img span ):元素里的内容多大 就有多大 width/height 不可以设置


position的值:

static

就是默认的布局形式

relative

相对布局中相对的是自己在普通流的相对位置 由于又要重新定位所以多了四个属性:top left right bottom 用来丈量偏离原来的位置还有一个特点:元素在普通流中的位置还在

absolute

绝对定位中的绝对是针对包含离自己最近的已经定位的父元素(static不算 因为绝对定位中普通流不存在) incline变成block

fix

和绝对定位一样 但相对于浏览器的窗口而言


浮动(float)

这是一个比较有意思的话题,浮动的最直接效果就是文字环绕图片 但要实现这个功能有产生了别的规定和用途

position属性 static,relative都是不脱离普通流的 absolute,fix是脱离普通流的 而float即脱离也不脱离 脱离——浮动到父元素或上一个浮动元素 不脱离——在父元素里占有空间 影响位于和他同一个父元素的下一个元素(如:文字环绕)

详细见:http://www.cnblogs.com/coffeedeveloper/p/3145790.html

还有一个:http://www.zhangxinxu.com/wordpress/2010/01/css-float%E6%B5%AE%E5%8A%A8%E7%9A%84%E6%B7%B1%E5%85%A5%E7%A0%94%E7%A9%B6%E3%80%81%E8%AF%A6%E8%A7%A3%E5%8F%8A%E6%8B%93%E5%B1%95%E4%B8%80/comment-page-1/#comments


一些有趣的问题

三角形的产生:知乎的关于用CSS产生三角形的回答

你可能感兴趣的:(CSS)