十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
有几个方法:
成都创新互联公司2013年成立,先为安宁等服务建站,安宁等地企业,进行企业商务咨询服务。为安宁企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
一种:
div1设置为position:relative,
div2设置为position:absolute,
此时的div2就相对于div1进行基准定位了。。。
因为绝对定位position:absolute,不在标准流中,所以内联元素不知到他的位置,会跑到他的下面去。。。这里就看你需要什么样式了,如果简单的可以用padding和margin配合完成,让内联元素出来。。但屏幕缩小放大就变形了。。
二种,
就是你改写一下你的HTML
div
id="div1"
div
id="div2"/div
/div
把div2放到div1里面,里面设置为float,再position:relative进行浮动后地位,
这种方法比第一种好,这里看你的需求了///
CSS绝对定位属性:position (属性规定元素的定位类型)
绝对定位示例:
h2{position :fixed}
下面是position属性值
1、absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
2、fixed:生成绝对定位的元素,相对于浏览器窗口进行定位。 元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
3、relative:生成相对定位的元素,相对于其正常位置进行定位。 因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。
4、static:默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
5、inherit:规定应该从父元素继承 position 属性的值。
小案例:
html
head
style type="text/css"
h2.pos_abs
{
position:absolute;
left:100px;
top:150px
}
/style
/head
body
h2 class="pos_abs"这是带有绝对定位的标题(百度知道)/h2
p通过绝对定位,元素可以放置到页面上的任何位置。下面的标题距离页面左侧 100px,距离页面顶部 150px。/p
/body
/html
案例截图:
CSS样式实现快速定位bug的六大技巧
1、检查是否清除浮动
其实有不少的CSSBUG问题是因为没有清除浮动造成的。养成良好的清除浮动的习惯是必要的,推荐使用无额外HTML标签的清除浮动的方法(尽量避免使用overflow:hidden;zoom:1的类似方法来清除浮动,会有太多的限制性)。
2、检查IE下是否触发haslayout
很多的IE下复杂CSS BUG都与IE特有的haslayout息息相关。熟悉和理解haslayout对于处理复杂的CSSBUG会事半功倍。推荐阅读old9翻译的《Onhavinglayout》(如果无法翻越穿越伟大的GFW,可阅读蓝色上的转帖)
快捷提示:如果触发了haslayout,IE的调试工具IEDeveloperToolbar中的属性中将会显示haslayout值为-1。
3、边框背景调试法
故名思议就是给元素设置显眼的边框或者背景(一般黑色或红色),进行调试。此方法是最常用的调试CSSBUG的方法之一,对于复杂BUG依旧适用。经济实惠还环保.
4、检查页面的标签是否闭合
不要小看这条,也许折腾了你两天都没有解决的CSS BUG问题,却仅仅源于这里。毕竟页面的模板一般都是由开发来嵌套的,而他们很容易犯此类问题。
快捷提示:可以用Dreamweaver打开文件检查,一般没有闭合的标签,会黄色背景高亮。
5、样式排除法
有些复杂的页面也许加载了N个外链CSS文件,那么逐个删除CSS文件,找到BUG触发的具体CSS文件,缩小锁定的范围。
对于刚才锁定的问题CSS样式文件,逐行删除具体的样式定义,定位到具体的触发样式定义,甚至是具体的触发样式属性。
6、模块确认法
有时候我们也可以从页面的HTML元素出发。删除页面中不同的HTML模块,寻找到触发问题的HTML模块。
一般的情况,是用DIV的FLOAT方式,进行定位,如果你需要使用灵活的定位的话,就使用POSITION:ABSOLUTE,然后用TOP及LEFT等属性,对DIV进行绝对位置的定位。有的时候DIV会跑偏了,原因可能是浏览器对像素值的解释不同造成的,这种现象在IE6中尤其明显。还有就是尽量不要使用MARGIN及PADDING对DIV进行定位,因为它们在浏览器中显示的样子不一样,原因就是各浏览器对盒式布局的解析有些出入。
建议新手的话,利用表格布局的思想,先进行初步的DIV布局练习。有一定的掌握之后,再逐步进入纯DIV+CSS布局。
有两种方式;一种是绝对定位方式,一种是通过固定定位方式(固定定位是浮动在浏览器的固定位置的,就是不能随浏览器的滚动而变化,始终在浏览器的底部);
能用到的css样式:position:absolute;position:fiexd;
div class="navdown" style="width:1000px;height:50px;"
li导航/lili导航/lili导航/lili导航/lili导航/lili导航/li
/div
css:
.navdown{position:absolute:bottom:0;}
.navdown{position:fiexd;bottom:0}