关于定位

2016-07-24  本文已影响0人  一无是个好孩子

我遇到的问题

最近修改了几个手机web端的几个样式问题,都是关于定位的问题,这里稍作总结一下html定位的几个属性,给自己或者来访者当个手册,避免不必要的修改。

关于html定位

html的定位问题说老生常谈算不上,但相对于网站的制作也算是不可避免的了。
static(默认)
当你没有为一个元素(例如div)指定定位方式时,默认为static,也就是按照文档的流式(flow)定位,将元素放到一个合适的地方。所以在不同的分辨率下,采用流式定位能很好的自适合,取得相对较好的布局效果。
一般来说,我们不需要指明当前元素的定位方式是static——因为这是默认的定位方式。除非你想覆盖从父元素继承来的定位系统。
left,top属性对static没有效果,static是靠margin这些定位的。
relative(相对定位)
在static的基础上,如果我想让一个元素在他本来的位置做一些调整(位移),我们可以将该元素定位设置为relative,同时指定相对位移(利用top,bottom,left,right)。
有一点需要注意的是,相对定位的元素仍然在文档流中,仍然占据着他本来占据的位置空间——虽然他现在已经不在本来的位置了。
absolute(绝对定位)
如果你想在一个文档(Document)中将一个元素放至指定位置,你可以使用absolute来定位,将该元素的position设置为absolute,同时使用top,bottom,left,right来定位。
如果没有父元素,位置是相对于body来进行的。
绝对定位会使元素从文档流中被删除,结果就是该元素原本占据的空间被其它元素所填充。
fixed(绝对定位)
此属性是始终定位在屏幕的某个位置。
如果对一个父元素设置relative,而对它的一个子元素设置absolute,则子元素的绝对定位的参照物为父元素。

针对手机web网站

如若我们做的网站是要适配于手机的或者有自己专门的手机网站,那么就要注意一些问题了,市面上的主流手机相当多,苹果手机占得比重还是比较大的,由于苹果手机专有的类似弹簧效果,如果我们采用fixed定位的话,会使设置的元素不随下拉的效果移动,就会产生些许不好的用户体验,当然这种细节问题也无伤大雅,但是能避免我们还是尽量避免,个人建议,仅供参考。

上一篇下一篇

猜你喜欢

热点阅读