要将一个div层的宽度样式设置为100%,并且减去190px。在css文件中应该怎样写?我将css写成:.div1{width: (100%)-190px;}这样在IE中可以,但是在Firefox中不行。

解决方案 »

  1.   

    这个div层是属于另一个div层里面的,
    也就是说这个div层宽度设置为100%的话,应该和它的父级div宽度相等吧。我需要的就是这个层的宽度要比父级div短190px.
      

  2.   

    可能是你的写不够规范:
    http://topic.csdn.net/u/20100701/14/ed652911-7128-48f6-b8e0-1f2d1b3abd47.html?92722
      

  3.   

    我把这部分代码贴出来吧:
    部分页面:<body>
    <div class="head">
    <div class="hdTab"></div>
    </div>
    </body>相关样式:.head

    width:100%; height: 70px; position: relative; background-color: #FFFFFF;
    background-image: url(images/head_bg.gif);background-position: bottom;
    background-repeat: repeat-x;
    }.hdTab

    width: 100%; height: 28px; padding-left: 190px; top: 40px; 
    position: absolute; line-height:2em;border: 1px solid red;
    }
    解释一下.hdTab样式:
    width: 100%;宽度100%,(基于它的父对象宽度的100%)
    height: 28px;高度28px
    padding-left: 190px;div层的左边填充190px
    top: 40px;顶边距40px
    position: absolute;位置在父对象中绝对定位
    line-height:2em;设置行高
    border: 1px solid red;设置边框为1px的红色实线问题是我需要设置宽度为父对象宽度减190px。
      

  4.   

    为什么不.div1 {
    margin-left: 95px;
    margin-right: 95px;
    }
      

  5.   

    同意楼上,为什么不用margin来控制和父对象的距离呢???
      

  6.   

    尝试着用margin-left:190px,出现的问题是子对象div的右边就会超出父对象190px。和使用padding-left: 190px;是一样的。我之所以要在宽度上减去190px也是这个原因。
      

  7.   

    使用javascript  可以进行控制 
      

  8.   


    不能用百分比减去 像素的
    你可以用padding、margin这2个属性
      

  9.   

    谢谢各位了,不过我后来找到了其它的方法解决我的问题。我后面还是选择了用表格来控件层的宽度,将层的宽度设置为100%,它的宽度就只会有表格中这一单元格的宽度了。但是用表格来控制页面,虽然div层的宽度问题是解决了,但是表格中td的的高度又不对了,最后发现如果在页面的头上这样声明会使表格的高度设置为100%不行:<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">然后将页面上的头改成下面这样,表格的td高度设置为100%设会自动适应高度了:<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    不知道这个:http://www.w3.org/TR/html4/loose.dtd
    有什么不一样,问题解决后还没有继续去研究的。