0

我想使用一系列图像作为页面边框,我的表格是矩形的。每个图像为 10 像素 x 10 像素。我有顶部、底部、侧面和角落图像。除侧面图像外,所有图像都可以正常工作,% 变量不起作用。ls 是左侧,我也有 rs,右侧,我的顶部底部和角落图像工作正常。这是我的代码片段:

我的 ASP 页面代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head runat="server">
<title>Home Page</title>
<link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
<asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<div class="container">
<!-- Page Table Set Format -->
<table cellpadding="0" cellspacing="0" class="MainTable">
<tr>
<td class="LeftPageIndent" rowspan="5">
</td>
<td class="HeadSpace" colspan="3">
</td>
<td class="RightPageIndent" rowspan="5">
</td>
</tr>
<tr>
<td class="tlc">
<img src="Images/tlc.jpg" alt="top left corner" />
</td>
<td class="tp">
<img src="Images/tp.jpg" alt="top" class="BorderTop" />
</td>
<td class="trc">
<img src="Images/trc.jpg" alt="top right corner" />
</td>
</tr>
<tr>
<td>
<img src="Images/ls.jpg" alt="left side" class="LSideBdrImage" />
</td>
<td class="pageContent">
<!-- Page Form inside Main Content START -->
<form id="Form1" runat="server">
<table class="ContentTable" cellspacing="0" cellpadding="0" width="100%" border="0">
<tr>
<td>
<p align="center">
<img src="Images/Logo.jpg" alt="Logo" width="341" height="63" border="0" /></p>
</td>
</tr>
<tr>
<td>
<hr class="hrPageSeperator" color="#FF9900" />
</td>
</tr>
<tr>
<td>
<div class="page">
<div class="main">
<asp:ContentPlaceHolder ID="MainContent" runat="server" />
</div>
</div>
</td>
</tr>
<tr>
<td>
<hr class="hrPageSeperator" color="#FF9900" />
<div class="clear hideSkiplink">
<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false"
                                IncludeStyleBlock="false" Orientation="Horizontal">
<Items>
<asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home" />
<asp:MenuItem NavigateUrl="~/About.aspx" Text="About" />
</Items>
</asp:Menu>
</div>
<hr class="hrPageSeperator" color="#FF9900" />
</td>
</tr>
</table>
</form>
<!-- Page Form inside Main Content END -->
</td>
<td>
<img src="Images/rs.jpg" alt="right side" class="RSideBdrImage" />
</td>
</tr>
<tr>
<td class="blc">
<img src="Images/blc.jpg" alt="bottom left corner" />
</td>
<td class="btm">
<img src="Images/btm.jpg" alt="bottom" class="BorderBottom" />
</td>
<td class="brc">
<img src="Images/brc.jpg" alt="bottom right corner" />
</td>
</tr>
<tr>
<td class="FootSpace" colspan="3">
</td>
</tr>
</table>
<!-- Page Table Set Format -->
</div>
</body>
</html>

我的 CSS 代码:

/* DEFAULTS
----------------------------------------------------------*/

body
{
background: #000000;
font-size: .80em;
font-family: "Helvetica Neue" , "Lucida Grande" , "Segoe UI" , Arial, Helvetica, Verdana, sans-serif;
margin: 0px;
padding: 0px;
color: #696969;
height: 100%;
}

#container 
{ 
min-height: 100%; 
}

* html #container 
{ 
height: 100%; 
} 

a:link, a:visited
{
color: #034af3;
}

a:hover
{
color: #1d60ff;
text-decoration: none;
}

a:active
{
color: #034af3;
}

p
{
margin-bottom: 10px;
line-height: 1.6em;
}

/* Page Border Setup...
----------------------------------------------------------*/
.MainTable
{
width:100%;
height:100%;
}

.HeadSpace
{
height:4px;
}

.LeftPageIndent
{
width: 12%;
}

.tlc
{
width:10px;
height:10px;
border:0px;
}

.tp
{
height:10px;
border:0px;
}    

.trc
{
width:10px;
height:10px;
border:0px;
}

.ContentTable
{
width:100%;
height:100%;
border:0px;
}

.blc
{
width:10px;
height:10px;
border:0px;
}

.btm
{
height:10px;
border:0px;
}

.brc
{
width:10px;
height:10px;
border:0px;
}

.RightPageIndent
{
width: 12%;
}

.FootSpace
{
height:2px;
}


/* Boarder Image Setup...
-----------------------------------------------*/

.BorderTop
{
width: 100%;
height: 10px;
border: "0";
}

.LSideBdrImage
{
width: 10px;
height: 100%;
border: "0";
}

.RSideBdrImage
{
width: 10px;
height: 100%;
border: "0";
}

.BorderBottom
{
width: 100%;
height: 10px;
border: "0";
}


/* HEADINGS   
----------------------------------------------------------*/

.hrPageSeperator
{
color:#FF9900;
}

h1, h2, h3, h4, h5, h6
{
font-size: 1.5em;
color: #666666;
font-variant: small-caps;
text-transform: none;
font-weight: 200;
margin-bottom: 0px;
}

h1
{
font-size: 1.6em;
padding-bottom: 0px;
margin-bottom: 0px;
}

/* PRIMARY LAYOUT ELEMENTS   
----------------------------------------------------------*/

.page
{
width: 100%;
background-color: #000000;
margin: 1px auto 0px auto; /* border: 1px solid #496077; */
}

.main
{
padding: 0px 12px;
margin: 12px 8px 8px 0px;
min-height: 100%;
width: 100%;
}

我的问题是,我可以以 px 为单位设置图像高度,但不能以 % 为单位设置图像高度。我已经对此进行了研究,并且有很多信息,但不足以以我的方式查看错误。有人可以帮助我吗,我会非常感谢它。

提前致谢。

克里斯

PS 每个图像保持 10px x 10px 并且不会改变。

4

2 回答 2

0

HTML 通常使用整个正文的现有高度来调整正文中元素的大小。因此,即使您的桌子高度和图像设置为 100%,这 100% 仍受您的体型限制。

要解决此问题,请尝试将您的身高设置为 100%。

于 2012-05-05T01:24:54.277 回答
0

MyGuruG 是在正确的轨道上,这是我必须做的:

ASP 代码:

<!doctype HTML public "-//W3C//DTD HTML 4.0 Transitional//EN" >
<!-- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "w3.org/TR/html4/strict.dtd"> -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head runat="server">
<title>Home</title>
<link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
<asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<!-- Set Page Format Table - START -->
<asp:Table CssClass="MainTable" runat="server" CellPadding="0" CellSpacing="0">
<asp:TableRow CssClass="HeadSpace">
<asp:TableCell ColumnSpan="6">
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell RowSpan="3">
<asp:Image ImageUrl="Images/Border/indent.jpg" runat="server"  CssClass="LeftPageIndent" AlternateText="Border Indent" />
</asp:TableCell>
<asp:TableCell>
<asp:Image ImageUrl="Images/Border/tlc.jpg" runat="server" AlternateText="Top Left Border Corner" Width="10px" Height="10px" />
</asp:TableCell>
<asp:TableCell ColumnSpan="2">
<asp:Image ImageUrl="Images/Border/tp.jpg" runat="server" AlternateText="Top Border" CssClass="BorderTop"/>
</asp:TableCell>
<asp:TableCell>
<asp:Image ImageUrl="Images/Border/trc.jpg" runat="server" AlternateText="Top Right Border Corner" Width="10px" Height="10px" />
</asp:TableCell>
<asp:TableCell RowSpan="3">
<asp:Image ID="Image1" ImageUrl="Images/Border/indent.jpg" runat="server" CssClass="RightPageIndent" AlternateText="Border Indent" />
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell>
<asp:Image ImageUrl="Images/Border/ls.jpg" runat="server" AlternateText="Left Border Side" Height="100%" Width="10" />
</asp:TableCell>
<asp:TableCell ColumnSpan="2">
<form id="Form1" runat="server">
<div class="page">
<p align="center">
<img src="Images/Border/logo.jpg" alt="Logo" border="0" /></p>
<div class="main">
<asp:ContentPlaceHolder ID="MainContent" runat="server" />
</div>
<p class="FootSpaceText">Copyright © All Rights Reserved</p>
</div>
</form>
</asp:TableCell>
<asp:TableCell>
<asp:Image ImageUrl="Images/Border/rs.jpg" runat="server" AlternateText="Right Border Side" Height="100%" Width="10" />
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell CssClass="blc">
<asp:Image ImageUrl="Images/Border/blc.jpg" runat="server" AlternateText="Bottom Left Border Corner" />
</asp:TableCell>
<asp:TableCell CssClass="btm" ColumnSpan="2">
<asp:Image ImageUrl="Images/Border/btm.jpg" runat="server" AlternateText="Bottom Border" Width="100%" Height="10px" />
</asp:TableCell>
<asp:TableCell CssClass="brc">
<asp:Image ImageUrl="Images/Border/brc.jpg" runat="server" AlternateText="Bottom Right Border Corner" Width="10px" Height="10px" />
</asp:TableCell>
</asp:TableRow>
<asp:TableRow CssClass="FootSpace">
<asp:TableCell ColumnSpan="6">
</asp:TableCell>
</asp:TableRow>
</asp:Table>
<!-- Set Page Format Table - END -->
</body>
</html>

我的 CSS 代码:

/* DEFAULTS
----------------------------------------------------------*/

body
{
background: #000000;
font-size: .80em;
font-family: "Helvetica Neue" , "Lucida Grande" , "Segoe UI" , Arial, Helvetica, Verdana, sans-serif;
margin: 0px;
padding: 0px;
color: #696969;
}

a:link, a:visited
{
color: #034af3;
}

a:hover
{
color: #1d60ff;
text-decoration: none;
}

a:active
{
color: #034af3;
}

.FootSpaceText
{
text-align: center;
}

/* Page Border Setup...
----------------------------------------------------------*/

.MainTable
{
width:100%;
height:100%;
}

.HeadSpace
{
height: 17px;
}

.LeftPageIndent
{
width: 140;
}

.RightPageIndent
{
width: 140;
}

.tlc
{
width: 10px;
height: 10px;
border: 0px;
}

.tp
{
width: 100%;
height: 10px;
border: 0px;
}

.trc
{
width: 10px;
height: 10px;
border: 0px;
}

.blc
{
width: 10px;
height: 10px;
border: 0px;
}

.btm
{
width: 100%;
height: 10px;
border: 0px;
}

.brc
{
width: 10px;
height: 10px;
border: 0px;
}

.FootSpace
{
height: 17px;
}


/* Boarder Image Setup...
-----------------------------------------------*/

.BorderTop
{
width: 100%;
height: 10;
border: 0;
}

LSideBdrImage
{
width: 10;
height: 100%;
}

RSideBdrImage
{
width: 10;
height: 100%;
}

.BorderBottom
{
width: 100%;
height: 10;
border: 0;
}


/* HEADINGS   
----------------------------------------------------------*/

p
{
margin-bottom: 10px;
line-height: 1.6em;
}

h1, h2, h3, h4, h5, h6
{
font-size: 1.5em;
color: #666666;
font-variant: small-caps;
text-transform: none;
font-weight: 200;
margin-bottom: 0px;
}

h1
{
/*-- Page Header Heading --*/
font-size: x-large;
padding-bottom: 0px;
margin-bottom: 0px;
color: #CCFF33;
}

h2
{
/*-- Page Header Heading 2 --*/
font-weight: bold;
color: #FF9900;
}

h3
{
/*-- Bold Red Serious Text --*/
font-weight: bold;
color: Red;
}

h4
{
/*-- Page Sub-Heading --*/
font-size: 1em;
padding-top: 1px;
padding-bottom: 1px;
margin-bottom: 0px;
font-variant: normal;
color: #FF9900;
}

h5
{
/*-- Page Heading 3 --*/
font-size: 2.2em;
font-weight: bold;
color: #FF9900;
}

/* PRIMARY PAGE CONTENT LAYOUT ELEMENTS   
----------------------------------------------------------*/

.page
{
width: 100%;
background-color: #000000;
margin: 1px auto 0px auto; 
}

.main
{
padding: 0px 12px;
margin: 12px 8px 8px 0px;
min-height: 100%;
width: 100%;
}

/* PRIMARY PAGE CONTENT TABLES  
----------------------------------------------------------*/

.MainContent
{
width:100%;
}

.CellBorder
{
/* -- border:1px solid #333333; --*/
border-bottom-style: solid;
border-bottom-width: 1px;
border-bottom-color: #333333;
border-left-style: solid;
border-left-width: 1px;
border-left-color: #333333;
border-right-style: solid;
border-right-width: 1px;
border-right-color: #333333;
border-top-style: solid;
border-top-width: 1px;
border-top-color: #333333;
}

使这项工作的代码如下。

第一的:

<!doctype HTML public "-//W3C//DTD HTML 4.0 Transitional//EN" >

我对此感到目瞪口呆。也许有人可以解释为什么需要更改“doctype”?当然,所有页面都有一套标准的基本要求,而高度会是其中的一部分吗?

第二:

<asp:Table CssClass="MainTable" runat="server" CellPadding="0" CellSpacing="0">
<!-- Table Content Here -->
</asp:Table>

我尝试了标准的 HTML 表格,但这对我不起作用,所以我不得不使用 ASP:Table 标签。

第三:

.MainTable
{
width:100%;
height:100%;
}

ASP:Table 需要设置其高度和宽度,否则将无法正常工作。

第四:

<asp:Image ImageUrl="Images/Border/ls.jpg" runat="server" AlternateText="Left Border Side" Height="100%" Width="10" />

我必须在 ASP:Image 标签中设置高度和宽度。在 CSS 中设置高度和宽度对我不起作用。

此外,我不得不使用变通方法来设置表格缩进:

<asp:TableCell RowSpan="3">
<asp:Image ID="Image1" ImageUrl="Images/Border/indent.jpg" runat="server" CssClass="RightPageIndent" AlternateText="Border Indent" />
</asp:TableCell>

我设置了 ASP:TableCell Width 属性,但只有左侧有效。右侧根本不起作用。

我想这就是全部,你知道要弄清楚这个愚蠢的问题到底是什么是一个真正的痛苦。我不敢相信做这个简单的任务这么难。我必须将这个答案交给 MyGuruG,因为这确实是基本的整体问题,谢谢 MyGuruG。

于 2012-05-07T02:57:54.737 回答