Элемент ‘a’ не может быть вложен внутрь элемента ‘iframe’

#vb.net #html #webbrowser-control

#vb.net #HTML #веб-браузер-управление

Вопрос:

Я работаю над проектом WebBowser в Visual Studio 2015, который встраивает часть их функциональности в другой веб-сайт, добавляя HTML-файл. Он запускается без предупреждений, используя фрагмент кода запуска stackoverflow, но если я запускаю его в Visual Studio 2015, он работает нормально, но я получаю эти предупреждения:

  • 200 пикселей не является допустимым значением ширины атрибута
  • 461px не является допустимым значением высоты атрибута
  • Элемент a не может быть вложен внутрь элемента iframe

html-код:

 <html>
<head>
    <title>Stock Quotes</title>
<style type="text/css">
    body {
     margin-left: 0px;
     margin-top: 0px;
     margin-right: 0px;
     margin-bottom: 0px;
     background-color: Gray;
    }
</style> 
</head>
<body>
    <iframe align="top" allowtransparency="true" marginwidth="0" 
            marginheight="0" hspace="0" vspace="0" frameborder="0" 
            scrolling="no" 
            src="http://api.finance.yahoo.com/instrument/1.0/GOOG,MSFT,ORCL,IBM/badge;quote/HTML?AppID=IEw2Pos2SwyGn532s_VbTecq4mILamp;sig=BPVwexNv5yP8zim6MxBootdHqJw-amp;t=1256412813067" 
            width="200px" height="461px">
                <a href="http://finance.yahoo.com">Yahoo! Finance</a>
                <a href="http://finance.yahoo.com/q?s=GOOG">Quote for GOOG</a>
    </iframe>
</body>
</html>  

Ответ №1:

Атрибуты width and height не принимают единицы измерения (за исключением % ). Поэтому:

 ... width="200" height="461" ...
  

Что касается второй проблемы: ошибка совершенно очевидна. Вы не можете иметь <a> тег внутри iframe. Вам разрешено иметь только текст внутри него. Более подробную информацию смотрите здесь .

Комментарии:

1. Исправлено все. Спасибо.