如何将我的WebForm定位在我希望它*叹息* ....

时间:2009-09-29 13:17:53

标签: asp.net asp.net-3.5

查看它现在的样子: alt text

如何让ContentPlaceHolder进入我概述的位置?谢谢你的帮助。

我主要在WinForms中编程,所以我习惯只是拖动它。为什么我不能在这里这样做。帮助我!

编辑:这是我在CSS中的内容:

.Form
{
    position:absolute;
    left:60px;
}

如何在我的表单代码中使用它:

<%@ Page Title="" Language="C#" MasterPageFile="~/EndUserMasterPage.Master" AutoEventWireup="true" CodeBehind="RegistroNuevoPostulante.aspx.cs" Inherits="WebSite.RegistroNuevoPostulante" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
</asp:Content>

4 个答案:

答案 0 :(得分:3)

拧紧设计师并学习HTML和CSS以了解正在发生的事情。

  

我主要在WinForms中编程,所以我习惯只是拖动它。为什么我不能在这里这样做。

因为标记引擎遵循不同的规则。这不像你有一个像素屏幕,你可以完全控制每个像素。

您绝对需要了解的是Block-level elementsInline elements以及Box model之间的区别。在你至少理解之前,很难完成任何事情。

答案 1 :(得分:2)

你需要弄脏手。你期望设计师做什么(像Windows行为一样),以前称为网格布局,这是ASP .NET 1.x的一个特性。它被删除了。正如您所期望的那样,它只在Internet Explorer上呈现“理想”(<理论上)。

我建议你在w3schools上阅读一些css教程。这个link可能是一个起点。你需要学习几个div样式属性来实现你想要的浮动,边距和填充。

您还可以尝试逆向工程方法,并从oswd获取免费模板,我确信有一个模板可以解决您的问题。您可以使用firefox + firebug来了解所有内容是如何实现的。

答案 2 :(得分:1)

您只能使用可视化设计师完成最简单的事情。如果你真的想要完成任何事情,你需要进入源视图。

您应该使用的代码会涉及在ContentPlaceHolder上放置左边距。这可以通过以下方式实现:

<div style="margin-left: 200px;">
  <asp:ContentPlaceHolder ... ></asp:ContentPlaceHolder>
</div>

请注意,这应该放在您的母版页中,而不是您的表单。

答案 3 :(得分:0)

我想这应该有效:

    <div id="divX" class="yourCssClass">
        <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"></asp:Content>
    </div>

我在这段代码中没有发现任何问题,我确信你可以使用CSS(定义yourCssClass)轻松地将子页面内容放在任何地方。

请注意,这是您需要在主页面写的代码。

如果您想要在整个网站中保持一致或在相应的特定页面中定义CSS类,请在母版页本身中定义CSS类。如果您不了解CSS,请稍等一下:

.yourCssClass
{
    margin-left: 60px;
}

我想对于“ recursive ”给出的相同解决方案,您在子页面(内容webform)上实现了它,因为您收到错误“脚本外部不支持内容”!我是对的Papuccino吗?