我有一個網頁,我在桌面應用程序中的WPF WebBrowser控件中顯示。我剛剛更新從一個asp.net按鈕類型更改爲一個asp.net的LinkButton和應用CSS樣式,使用樣式按鈕,而不是默認的灰色按鈕的網頁:WPF System.Windows.Controls.WebBrowser不呈現鏈接按鈕
a.btnSave
{
background: url(Resources/Images/btnSave.png) no-repeat 0 0;
display:inline-block;
width: 75px;
height: 23px;
text-indent: -9999px;
}
a.btnSave:hover {background-position: 0 -23px;}
a.btnCancel
{
background: url(Resources/Images/btnCancel.png) no-repeat 0 0;
display:inline-block;
width: 75px;
height: 23px;
text-indent: -9999px;
}
a.btnCancel:hover {background-position: 0 -23px;}
a.btnReset
{
background: url(Resources/Images/btnReset.png) no-repeat 0 0;
display:inline-block;
width: 75px;
height: 23px;
text-indent: -9999px;
}
a.btnReset:hover {background-position: 0 -23px;}
...
<asp:LinkButton ID="btnSave" runat="server" CssClass="btnSave" OnClick="btnSave_Click" OnClientClick="OnSubmit()" UseSubmitBehavior="False" Text=" " />
<asp:LinkButton ID="btnCancel" runat="server" CssClass="btnCancel" OnClick="btnCancel_Click" OnClientClick="OnSubmit()" CausesValidation="False" Text=" " />
<asp:LinkButton ID="btnReset" runat="server" CssClass="btnReset" OnClick="btnReset_Click" OnClientClick="OnSubmit()" CausesValidation="False" Text=" " />
當我在IE 8(或Firefox)中查看頁面時,按鈕顯示正確。但是,當我在應用程序內的WebBrowser控件中加載頁面時,按鈕缺失。如果我將鼠標懸停在應該放置的位置上,我不會收到手形圖標,因此不僅僅是圖像未加載。當我查看源代碼時,錨定標記位於那裏,如果我複製源並將其保存到HTML文件並在瀏覽器窗口中打開它,則它們確實顯示正確。在過去,我遇到過WebBrowser沒有像瀏覽器一樣顯示浮動div的問題,而必須切換到表格佈局。它不支持內嵌塊顯示類型或什麼?
如果它的事項,這是申報頁面的文檔類型:它在默認情況下這是不尊重的方式使用兼容模式
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
我發現,如果我把兼容性視圖在IE,按鈕消失。這可能是問題嗎? – xr280xr
它使用兼容模式,如果我使用註冊表鍵或在我的頁面上設置,則會出現按鈕!這給我留下了這些問題:我的!DOCTYPE不是指定使用最新的HTML5/CSS3標準嗎?如果是這樣,我的代碼有什麼問題?爲什麼導致它正常工作,但是<!DOCTYPE html>本身沒有? – xr280xr
新標籤並不真正相關。我們不是在這裏討論HTML5或CSS3。 – BoltClock