Html 为什么<;表>;不允许进入<;p>;

Html 为什么<;表>;不允许进入<;p>;,html,asp.net,visual-studio-2008,html-table,Html,Asp.net,Visual Studio 2008,Html Table,为什么不能嵌套在中?我能做的更正是什么? 删除和标记会损坏我的设计。由于网站遵循客户提供的设计 我有以下代码,它在VS2008中运行良好,但我收到警告: <div class="right_articles"> <p> <table> <tr> <td> <img alt="Img not found" src=

为什么
不能嵌套在
中?我能做的更正是什么? 删除
标记会损坏我的设计。由于网站遵循客户提供的设计

我有以下代码,它在VS2008中运行良好,但我收到警告:

<div class="right_articles">
    <p>
        <table>
            <tr>
                <td>
                    <img alt="Img not found" src="images/ribbon.gif" style="width: 155px; height: 125px;" />
                </td>
                <td>
                    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />
                    <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label><br />
                    <asp:Label ID="Label3" runat="server" Text="Label"></asp:Label>
                </td>
            </tr>
        </table> 
    </p>
    <p>&nbsp;</p>
    <p>
        <table>
            <tr>
                <td>
                    <img alt="Img not found" src="images/medal.gif" style="width: 155px; height: 125px;" />
                </td>
                <td>          
                    <asp:Label ID="Label4" runat="server" Text="Label"></asp:Label><br />
                    <asp:Label ID="Label5" runat="server" Text="Label"></asp:Label><br />
                    <asp:Label ID="Label6" runat="server" Text="Label"></asp:Label>      
                </td>
            </tr>
        </table>
    </p>
</div>






警告1此结束标记没有匹配的开始标记。 E:\WebSite4\test.master 121警告2验证(XHTML 1.0 过渡):在开始和结束之间不允许有文本 元素html'的标记。E:\WebSite4\test.master 5警告3验证 (XHTML 1.0过渡):元素“form”缺少结束标记。 E:\WebSite4\test.master 21警告4类或CssClass值为 没有定义。E:\WebSite4\test.master 33警告5文件'spacer.gif' 找不到。E:\WebSite4\test.master 116警告7验证(XHTML 1.0过渡):元素“img”缺少必需的属性“alt”。E:\WebSite4\test.master 116警告8验证(XHTML 1.0 过渡):元素“table”不能嵌套在元素“p”中。 E:\WebSite4\test.master 78警告9验证(XHTML 1.0 过渡):元素“table”不能嵌套在元素“p”中。 E:\WebSite4\test.master 93


在HTML中,必须理解不能包含其他块级元素,而TABLE是块级元素。
P
结束标记是可选的,当您试图使
P
元素包含它不能包含的内容时,浏览器将使用结束标记

p元素表示一个段落。它不能包含块级别 元素(包括P本身)


回答您的实际问题时,段落不能包含任何其他块元素,包括表格。此外,结束标记是可选的,因此解析器随后找到的第一个结束标记将被视为结束了段落

如果我能看到更多的代码和布局,这会有所帮助,但是我相信,从表格周围移除
标记,然后使用CSS正确格式化表格的位置,应该可以达到效果

<div class="right_articles">
            <table>
            <tr>
            <td>
                <img alt="Img not found" src="images/ribbon.gif"                     
                    style="width: 155px; height: 125px;" />
            </td>
            <td>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />
                <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label><br />
                <asp:Label ID="Label3" runat="server" Text="Label"></asp:Label>
            </td>
            </tr>
            </table>
            <p>&nbsp;</p>
            <table>
            <tr>
            <td>
                <img alt="Img not found" src="images/medal.gif"                     
                    style="width: 155px; height: 125px;" />
            </td>
            <td>          
                <asp:Label ID="Label4" runat="server" Text="Label"></asp:Label><br />
                <asp:Label ID="Label5" runat="server" Text="Label"></asp:Label><br />
                <asp:Label ID="Label6" runat="server" Text="Label"></asp:Label>      
            </td>
            </tr>
            </table>
        </div>






XHTML标准不允许它。在
@Rohit内部还可以使用什么:为什么不能使用
div
而不是
段落
,换句话说,既然已经有
div
,为什么还需要它呢?你可以通过你的
right\u文章
类来控制布局,不是吗?是我设计的一部分。它里面只有一个图像。但是我需要一张桌子。