WebBrowser перестает отвечать на определенную веб-страницу, но IE не - PullRequest
3 голосов
/ 12 мая 2011

Если вы создаете приложение WinForms и добавляете элемент управления WebBrowser и переходите на эту страницу:

http://www.llrx.com/features/deepweb2010.htm

Приложение перестает отвечать на запросы.IE, Chrome и Mozilla не будут.Есть идеи "что я делаю не так"?

Ответы [ 2 ]

1 голос
/ 13 мая 2011

Строки CSS ниже приводят его в ужас:

/* MSIE PC */
#logo a { background-image: expression(this.runtimeStyle.backgroundImage = "none", this.innerHTML = '<img src="http://www.llrx.com/themes/llrx/images/logo.gif" border="0" alt="' + this.innerHTML + '">'); }
#tagline a { background-image: expression(this.runtimeStyle.backgroundImage = "none", this.innerHTML = '<img src="http://www.llrx.com/themes/llrx/images/h2.gif" border="0" alt="' + this.innerHTML + '">'); }

Вы присваиваете innerHTML узла атрибуту ALT изображения, но innerHTML содержит неэкранированный HTML, поэтому вы заканчиваете созданиекакой-то очень прикольный HTML-код, например:

<img alt="<img alt="<img alt="<img alt="

Снимок экрана может показаться лучше:

enter image description here

1 голос
/ 13 мая 2011

Он прав.

            WebBrowser wb = new WebBrowser();
            wb.Parent = this;
            wb.Visible = true;
            wb.Navigate("C:\Test.html");

С наименьшей формой HTML:

<!DOCTYPE html>
<html>

<head>
    <base href="http://www.llrx.com/" />
    <style type="text/css" media="all">@import "/themes/llrx/style.css"; #beta2fix a:hover {color: #000;}</style>
</head>
<body>

<div>
    <h1 id="logo"><a href="/">Test</a></h1>
</div>

</body>
</html>

Будь я проклят, если я знаю почему (пока).

...