我怎样才能包含文字控件的大小?
How can I contain the size of my literal control?
我正在 ASP.NET 网站上工作,我正在使用 HttpGetRequest 和 HttpGetResponse 将 https://news.google.com/news 的内容放入我的一个页面上的文字控件中。
问题是流覆盖了整个页面。我无法使用 div 或容器来控制大小。所以来自文字的流覆盖了它上面的标签(在它自己的 div 中)和从 SiteMaster.Master.
继承的菜单
如何让菜单和标签保持在文本控件上方?
后面的代码:
protected void Page_Load(object sender, EventArgs e)
{
HttpWebRequest googRequest = (HttpWebRequest)HttpWebRequest.Create("https://news.google.com/news");
HttpWebResponse resp = (HttpWebResponse)googRequest.GetResponse();
string googNews = new System.IO.StreamReader(resp.GetResponseStream()).ReadToEnd();
Literal1.Text = googNews;
Label1.Text = DateTime.Now.ToLongTimeString();
}
ASP:
<%@ Page Title="" Language="C#" MasterPageFile="~/SiteMaster.Master" AutoEventWireup="true" CodeBehind="Literally.aspx.cs" Inherits="DNut.Literally" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<p>
<asp:Label ID="Label1" runat="server" Font-Names="Arial" Font-Size="Larger" Font-Italic="true"></asp:Label>
</p>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder2" runat="server">
<div>
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
</div>
</asp:Content>
根据您接收内容的方式,内容可能包含 html 标签、head 标签和 body 标签。这不是注入现有 html 文档中间的有效标记。在另一个 html 文档中包含整个页面的典型方法是通过 iframe 标记。
Iframe 在 Web 开发世界中有点不受欢迎,并且没有被大量使用,但在这种情况下,它非常适合您正在尝试做的事情。它还有助于保护您的站点免受跨站点脚本 (XSS) 攻击(尝试通过文字标记将标记注入 div。
使用 iframe 标记,您可以将 'src' 属性设置为要显示的 url,并且不需要 literal
或相关的 c# 代码来设置它。
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder2" runat="server">
<iframe src='https://news.google.com/news'></iframe>
</asp:Content>
您可以设置 iframe 的样式以获得理想的高度和宽度。
我正在 ASP.NET 网站上工作,我正在使用 HttpGetRequest 和 HttpGetResponse 将 https://news.google.com/news 的内容放入我的一个页面上的文字控件中。
问题是流覆盖了整个页面。我无法使用 div 或容器来控制大小。所以来自文字的流覆盖了它上面的标签(在它自己的 div 中)和从 SiteMaster.Master.
继承的菜单如何让菜单和标签保持在文本控件上方? 后面的代码:
protected void Page_Load(object sender, EventArgs e)
{
HttpWebRequest googRequest = (HttpWebRequest)HttpWebRequest.Create("https://news.google.com/news");
HttpWebResponse resp = (HttpWebResponse)googRequest.GetResponse();
string googNews = new System.IO.StreamReader(resp.GetResponseStream()).ReadToEnd();
Literal1.Text = googNews;
Label1.Text = DateTime.Now.ToLongTimeString();
}
ASP:
<%@ Page Title="" Language="C#" MasterPageFile="~/SiteMaster.Master" AutoEventWireup="true" CodeBehind="Literally.aspx.cs" Inherits="DNut.Literally" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<p>
<asp:Label ID="Label1" runat="server" Font-Names="Arial" Font-Size="Larger" Font-Italic="true"></asp:Label>
</p>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder2" runat="server">
<div>
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
</div>
</asp:Content>
根据您接收内容的方式,内容可能包含 html 标签、head 标签和 body 标签。这不是注入现有 html 文档中间的有效标记。在另一个 html 文档中包含整个页面的典型方法是通过 iframe 标记。
Iframe 在 Web 开发世界中有点不受欢迎,并且没有被大量使用,但在这种情况下,它非常适合您正在尝试做的事情。它还有助于保护您的站点免受跨站点脚本 (XSS) 攻击(尝试通过文字标记将标记注入 div。
使用 iframe 标记,您可以将 'src' 属性设置为要显示的 url,并且不需要 literal
或相关的 c# 代码来设置它。
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder2" runat="server">
<iframe src='https://news.google.com/news'></iframe>
</asp:Content>
您可以设置 iframe 的样式以获得理想的高度和宽度。