首页 文章

如何在asp.net中设置与浏览器相同的元素大小

提问于
浏览
0

我正在 Build 一个网站,我有一个母版页 . 我已经在主页面中设置了元素的宽度和高度以适应Firefox浏览器,因此当我打开我的页面时它工作正常但是当我转移到Chrome或Opera或IE时,页面不适合整个页面浏览器区域 . 该页面比浏览器的查看区域更小(显示空白)或更大(获得滚动条),并且功能很明显,因为我已经硬编码宽度和高度以适应Firefox . 我也知道,当我在Firefox中打开同一页面但在别人的计算机上时,至少会有一些失真(由于分辨率不同) .

有没有人有一个javascript / c#代码,我可以根据它打开的浏览器动态设置元素的大小?以下是我的母版页面的html . 我已经突出显示了我为Firefox设置的粗体代码 .

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>
<!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>Untitled Page</title>
    <asp:ContentPlaceHolder id="head" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <table width="1330" cellspacing="1" cellpadding="1" border="0" align="left">
    <tr>
        <td width="5" rowspan=2>&nbsp;</td>
        <td width="95">&nbsp;</td>
        <td align="center" width="1230"><img src="Images/dset01titleds.gif" width=392 height=63 border=0 alt="Blank Title w/ Drop Shadow"></td>
    </tr>
    <tr>
        <td align="center" valign="top" width="100">
            <a href="http://"><img src="Images/dset01b01.gif" width=114 height=30 border=0 alt="Home"></a><br>
            <a href="http://"><img src="Images/dset01b02.gif" width=114 height=30 border=0 alt="About Us"></a><br>
            <a href="http://"><img src="Images/dset01b03.gif" width=114 height=30 border=0 alt="Products"></a><br>
            <a href="http://"><img src="Images/dset01b04.gif" width=114 height=30 border=0 alt="Services"></a><br>
            <a href="http://"><img src="Images/dset01b05.gif" width=114 height=30 border=0 alt="Order"></a><br>
            <a href="http://"><img src="Images/dset01b06.gif" width=114 height=30 border=0 alt="Contact"></a><br>
            <a href="http://"><img src="Images/dset01b07blank.gif" width=114 height=30 border=0 alt="Blank"></a><br>
        </td>
        <td valign="top" width="1230px" style="height:440px">
            <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
            </asp:ContentPlaceHolder>
        </td>
    </tr>
    <tr style="height:10px"><td colspan=3 align=center>bottom of the screen</td></tr>
    </table>
    </div>
    </form>
</body>
</html>

2 回答

  • 0

    为什么不使用CSS来设置客户区的样式?

    你可以用

    width: 100%;
    height: 100%;
    

    获取元素使用所有可用空间 . 我不认为在c#中计算服务器端的大小是个好主意 .

  • 0

    通常,您应在 percentpixel 中设置主容器 (Div or table) 的宽度 . 当您将其设置为100%(100%)时,它将覆盖每个浏览器中的所有页面 . 如果以像素为单位设置主容器,则920像素差不多 . 但是您应该使用容器的 margin:0px auto css属性放置在页面中心 . 对于内部元素,您可以使用百分比和像素 . 因为你之前已经设置了主容器 width .

相关问题