c# - 在 C# 中获取 iframe 元素

标签 c# html css

我试图在代码隐藏中获取第二个 iframe 的 id,即 iframe2,以添加一些 css 样式。这是我的 html:

 <body>
    <form id="Form1" method="post" runat="server">
        <table id="Table1">
            <tr>
                <td>
                    <iframe id="iframe1">
                    </iframe>
                    <uc1 id="uc1"></uc1>
                </td>
            </tr>
            <tr>
                <td>
                    <asp:Panel id="Panel">
                    </asp:Panel>
                    <uc1 id="uc2">
                    </uc1>
                </td>

                <td>
                    <iframe id="iframe2">
                    </iframe>
                </td>
            </tr>
        </table>
    </form>
</body>

出于某种原因,我无法在 C# 中获取 iframe id。请问我该怎么做?

最佳答案

访问 iframe

确保添加 runat="server"属性为 <iframe> :

<iframe id="iframe2" runat="server"></iframe>

这将使您能够通过 FindControl() 在您的代码隐藏中访问它方法:

// Access your iframe
var iframe = FindControl("iframe2");
iframe.Style.Add("border", "2px solid red");

或直接使用其分配的 id :

iframe2.Style.Add("border", "2px solid red");

关于样式

您提到您正在明确尝试设置此元素的样式。如果是这种情况,您应该使用 CSS 而不是在 <iframe> 上设置内联样式元素本身。

例如,您可以应用样式来定位该元素:

<style type='text/css'>
    #iframe {
        /* Place your styles here (i.e. border: 4px solid red, etc.) */
    }
</style>

值得注意的是,实际为 <iframe> 设置样式将只设置元素本身的样式,因为在其中呈现的内容本质上是元素中的“沙盒”,不会受到某些指定样式的影响。

关于c# - 在 C# 中获取 iframe 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42772328/

相关文章:

c# - 在可枚举的可枚举上调用 .Distinct()

c# - 你如何在 Windows 应用程序中显示 HTML?

javascript - 禁用文本框而不使用 disabled

css - 如何使外部事件框动态扩展和空心圆对齐

jquery - 在移动设备上将 iframe 内容包含到 iframe 大小

c# - 如何确保两个 .NET 库在功能上相同

c# - 从俄语(西里尔文)解码 Http 响应内容

html - 为什么我的导航栏图标没有出现在我的网站上?

html - 多行文本的垂直对齐 UL LI 元素

php - 两页一导航