C# 删除Internet Explorer中不需要的垂直滚动条
在InternetExplorer11(其他浏览器没有这个问题)中,下面的代码在标题中显示了一个不需要的垂直滚动条 使用开发者工具,你可以看到下面的蓝线覆盖了我的'!重要提示“仅覆盖上面的两行 有人知道如何隐藏这个滚动条吗?我的第一次尝试是将相同的代码放入样式表中,但这也没有帮助(只是让您知道我已经尝试了两种方法)。不知怎的,浏览器生成的代码总是在每次都放-ms-overflow-y:可见代码!我还尝试在我的代码隐藏中插入以下行:C# 删除Internet Explorer中不需要的垂直滚动条,c#,html,css,asp.net,gridview,C#,Html,Css,Asp.net,Gridview,在InternetExplorer11(其他浏览器没有这个问题)中,下面的代码在标题中显示了一个不需要的垂直滚动条 使用开发者工具,你可以看到下面的蓝线覆盖了我的'!重要提示“仅覆盖上面的两行 有人知道如何隐藏这个滚动条吗?我的第一次尝试是将相同的代码放入样式表中,但这也没有帮助(只是让您知道我已经尝试了两种方法)。不知怎的,浏览器生成的代码总是在每次都放-ms-overflow-y:可见代码!我还尝试在我的代码隐藏中插入以下行:gvHeaders.Style.Add(“overflow-
gvHeaders.Style.Add(“overflow-y”,“hidden!important”)
。我还尝试将noOverflowy
CssClass放入CoolGridView标记中。这是一个使用C#的ASP.NET页面
因为这是母版页的一部分,所以我必须使用这个ScriptManagerProxy
标记,对吗?HTML仍然没有改变
<asp:UpdatePanel ID="pnlOrders" runat="server" Width="942px" Style="margin-left: 10px" UpdateMode="Always">
<ContentTemplate>
<script type="text/javascript">
$(function() {
overflowHidden();
});
</script>
<div id="HeaderDiv" runat="server" >
<cool:CoolGridView ID="gvHeaders" runat="server"
这是我在上面的最新尝试。我确实得到了警报弹出窗口,但呈现的HTML保持不变 在ASP.NET中进行服务器控件渲染时,除了彻底检查正在使用的控件文档以修改其布局之外,您没有什么可做的(顺便说一句,对生成的HTML缺乏控制是切换到ASP.NET MVC的主要原因之一)。但是,您始终可以通过JavaScript攻击生成的HTML。所以你可以这样做:
(function() {
document.getElementById('ContentPlaceHolder1_UCOrdersControl_gvHeadersjEsCoOl_headerDiv').style.msOverflow = 'hidden';
})();
你能改变标题栏的高度吗?尝试将其增加一小部分。这是MS特定的css规则,您的
overflow-y
将被忽略。尝试添加-ms-overflow-y:hidden!重要的代码>相反。将我的HeaderStyle的大小从25px更改为35px只会使它和滚动条更高!更改为-ms-overflow-y似乎也没有任何效果。我确信上面的内容可能正是我想要的,但是,作为javascript大师,我不知道如何/在哪里调用这样的脚本。它必须在页面呈现后调用,对吗?是的,只需将我在aspx页面的脚本标记中提到的脚本放置:/*这是脚本*/
,您无论如何都需要调用它。正如我提到的,您可以使用(function(){overflowHidden();})()调用它代码>或搜索jqueryready函数,以便在页面加载时运行脚本。放置一个警报('test')
,查看脚本是否正在执行。我已经在上面放置了最后一个建议/注释。尝试将overflowHidden()
函数体放在$(function()
<asp:UpdatePanel ID="pnlOrders" runat="server" Width="942px" Style="margin-left: 10px" UpdateMode="Always">
<ContentTemplate>
<script type="text/javascript">
$(function() {
overflowHidden();
});
</script>
<div id="HeaderDiv" runat="server" >
<cool:CoolGridView ID="gvHeaders" runat="server"
<asp:UpdatePanel ID="pnlOrders" runat="server" Width="942px" Style="margin-left: 10px" UpdateMode="Always">
<ContentTemplate>
<script type="text/javascript">
$(function () {
alert("About to set msOverFlow style to hidden");
document.getElementById('ContentPlaceHolder1_UCOrdersControl_gvHeadersjEsCoOl_headerDiv').style.msOverflow = 'hidden';
});
</script>
<div id="HeaderDiv" runat="server" >
<cool:CoolGridView ID="gvHeaders" runat="server"
...
(function() {
document.getElementById('ContentPlaceHolder1_UCOrdersControl_gvHeadersjEsCoOl_headerDiv').style.msOverflow = 'hidden';
})();