css布局遇到的问题(css中常见问题及解决办法)

http://www.itjxue.com  2023-01-24 22:13  来源:未知  点击次数: 

div+css布局错乱问题解决方法

div是一种分块机制,这就要求在设计页面时要弄清各块之间级联关系

这个问题需要把left和right再使用一个div包含起来,直接上代码啦,下边就可以实现你要求的布局。foot总在下边,并能随着left,right的高度改变自动调整。

div

id="box"

div

id="content"

div

id="left"这里是页面的左部分内容/div

div

id="right"这里是页面的右部分内容/div

/div

div

id="foot"这里是放页尾的版权信息等的/div

/div

/******css样式**/

style

type="text/css"

#content{

width:

100%;

background:

aqua;

overflow:

auto;

}

#left{

width:50%;

float:

left;

height:250px;

background:

blue;

}

#right{

width:50%;

float:

right;

height:100px;

background:

fuchsia;

}

#foot{

height:

30px;

background:

gray;

}

/style

CSS布局问题

div是块元素,在浏览器里默认样式就是占据一整行,除非你对其使用了浮动和宽度设置转换成行内元素。

所有的标签默认样式都是从左右开始对齐的;那么第一个div不需要是用浮动,

第二个div里的a向右对齐,那么需要使用右浮动;

代码示例如下:

style?type="text/css"

*{padding:?0;?margin:?0;}

/*初始化*/

.box2?a{?float:?right;}

.clear{clear:?both;}

/style

div?class="box1"

a?href="#"文字演示1/a

a?href="#"文字演示2/a

/div

div?class="box2"

a?href="#"文字演示3/a

a?href="#"文字演示4/a

div?class="clear"/div

!--清除浮动--

/div

css布局需要注意的几点

要注意整体布局;

链接样式;(当用css定义链接的各种状态时,要注意书写的顺序)

伪类和选择符的配合使用;(将伪类和类组合起来用,就可以在同一个页面中做几组不同的链接效果了)

所有样式名全都小写;尽量用英文;为保证日后能一目了然,尽量不缩写;

一些代码的使用方试;

浮动:float((1、对于内部全为浮动的元素,记得清除浮动。2、元素内部的子元素尽量不要全部浮动,最好保留最边上的一个设置margin,这样便不会出现因浏览器窗口缩放导致的浮动元素被挤到下一行,使页面错乱的情况。)

定位:

相对定位:relative(外边距合并情况,仅当父元素与子元素都是默认定位(relative),或指定为relative,且父元素合并边没有border时才会发生)

绝对定位:absolute(1、所有父类元素都没指定position时,相对于body绝对定位。2、父类中有指定position的元素时,相对于从下往上遍历的第一个指定了position的父类元素绝对定位。)

CSS fixed 布局嵌套的一些问题

之前遇到过 fixed 布局嵌套的一些场景, fixed 布局是针对 body 定位的,但是在某些特殊情况下,子级的 fixed 会受到父级 fixed 的影响,除了需要 z-index 来区分层级,还要注意 transform 的使用(貌似好多地方 transform 都会引发问题)

一般的场景是一个遮罩加一个弹框

效果是这样的

这个时候在内部的 children 再使用 fixed 布局时,就会被父级的 fixed 元素限制住

1、父级不使用 tansform

2、不进行嵌套

关于CSS布局的问题

那个第2点有两个原因造成,一是PageBody的padding-top属性,二是MainBody的margin-top属性,把它们都设为0。

第3点可以设置PageBody的overflow属性,有四五个值,你一个个试下看看哪个是你要的效果。

html

head

title

/title

style?type="text/css"

body?{font-family:Verdana;?font-size:14px;?margin:0;}

/*页面层容器*/

#container?{width:800px;margin:0?auto;}

/*页面头部*/

#Header?{margin-bottom:5px;height:100px;background:#FFCC99;}

/*页面主体*/

#PageBody{height:400px;width:800px;margin-bottom:5px;background:#CCFF00;

padding-top:0;

overflow:hidden;}

#Sidebar{width:370px;height:400px;float:left;background:#99FF99;}

#MainBody{width:400px;height:500px;margin-left:377px;background:#99FFFF;

margin-top:0;}

/*页面底部*/

#Footer?{height:60px;background:#00FFFF}

/style

/head

body

div?id="container"

div?id="Header"/div

div?id="PageBody"

div?id="Sidebar"/div

div?id="MainBody"/div

/div

div?id="Footer"/div

/div

/body

/html

(责任编辑:IT教学网)

更多

推荐CSS教程文章