css代码:
#left
{ position:relative;
         float:left;
width:20%;
 border: 1px solid #0099CC;
}
#right
{ position:relative;
        float:right;
width:70%;
border: 1px solid #0099CC;
}
html代码:
<div id="left">1</div>
<div id="right">2</div>
为什么向右边浮动的层,不贴着边啊?左边显示正常,向右浮动就是不贴边(padding,margin设置的都正确)。同样的代码,在VS2003里,或者HTML里都能正常显示啊!

解决方案 »

  1.   

    是不是padding,margin没有设置成= 0?
    虽然你说了都设置正确
    其实这东西找问题简单
    你下个IEDevToolBar,一看就全明白了
      

  2.   

    你div外面还有东西把它们包含进来么?还有你可以多换几种浏览器看看效果
      

  3.   

    div外面还有个总的div....
    position:relative去掉也不行.....
    VS2005不会这么逊吧,03都能识别05做不了?还是web.config里要设置啥东西?
    各位大哥你们自己试试,布一个左右都有层的页面:
    <div id="contain">
      <div id="left">left</div>
      <div id="right">right</div>
    </div>
    看看你们的正常吗?正常的话把相关代码发来看看啊!!!
      

  4.   

    正常呀
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>无标题页</title>
        <style type="text/css">
        #left 
        { position:relative; 
                float:left; 
        width:20%; 
        border: 1px solid #0099CC; 
        } 
        #right 
        { position:relative; 
                float:right; 
        width:70%; 
        border: 1px solid #0099CC; 
        } 
        #contain 
        { 
        float:left;
        border: 1px solid #0099CC; 
        } 
        </style>
    </head>
    <body>
        <form id="form1" runat="server">
            <div id="contain">
                <div id="left">
                    1
                </div>
                <div id="right">
                    2
                </div>
            </div>
        </form>
    </body>
    </html>
      

  5.   

    你那样是在正常!可是如果再添一个100%的层,向油浮动的就不正常了!
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head id="Head1" runat="server"> 
        <title>无标题页 </title> 
        <style type="text/css"> 
        #left 
        { position:relative; 
                float:left; 
        width:20%; 
        border: 1px solid #0099CC; 
        } 
        #right 
        { position:relative; 
                float:right; 
        width:70%; 
        border: 1px solid #0099CC; 
        } 
        #contain 
        { 
        float:left; 
        border: 1px solid #0099CC; 
        } 
         #all 
        { 
        position:relative;
        width:100%; 
        border: 1px solid #0099CC; 
        } 
       
        </style> 
    </head> 
    <body> 
        <form id="form1" runat="server"> 
            <div id="contain"> 
            
             <div id="all">all</div>
                <div id="left"> 
                    1 
                </div> 
                <div id="right"> 
                    2 
                </div> 
            </div> 
        </form> 
    </body> 
    </html> 
      

  6.   

    检查你代码<div id="right">2</div>后面是不是有空格你“楼主”里列出的CSS代码没有问题,我已经试过了你的截图我也看了,从图上来看,那块不贴边的空白可能是有空格占用了,要不你把这个页面的全部代码粘出来看看,让大家再分析一下!或者把代码文件上传,这样不会有误差!
      

  7.   

    我的全部代码就是刚才那个:
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head id="Head1" runat="server"> 
        <title>无标题页</title> 
        <style type="text/css"> 
        #left 
        { position:relative; 
          float:left; 
          width:20%; 
          border: 1px solid #0099CC; 
        } 
        #right 
        { position:relative; 
          float:right; 
          width:70%; 
          border: 1px solid #0099CC; 
        } 
        #contain 
        { 
          width:100%; 
          padding:0;
          border: 1px solid #0099CC; 
        } 
         #all 
        { 
           width:100%; 
           border: 1px solid #0099CC; 
        } 
        </style> 
    </head> 
    <body> 
        <form id="form1" runat="server"> 
             <div id="contain">
             <div id="all">all</div>
                <div id="left"> 
                    1 
                </div> 
                <div id="right"> 
                    2 
                </div>
              </div> 
        </form> 
    </body> 
    </html> 
    <div id="right">2</div>后面也没有空格符:&nsbp;(之前在母版页中调试时有空格符被我去掉了,去掉了还是不行,现在重新建个Default.aspx页面,源文件都在上面了,运行时right层右边始终贴不了边)。
    楼上的运行正常,我都怀疑我的VS2005有问题了,应该也不要配置什么吧,因为其他的CSS语法都运行正常!