CSS и TWebbrowser Delphi - PullRequest
       9

CSS и TWebbrowser Delphi

2 голосов
/ 24 февраля 2011

Мне было интересно, можно ли манипулировать CSS веб-сайтов.Например цвет в полях ввода?Я взглянул на несколько вопросов, но мне не ясно, возможно ли это вообще.

Например, в Google Chrome: всякий раз, когда выбрано поле, оно показывает золотую линию вокруг внешнего объекта.Возможно ли сделать это и другие вещи в Delphi с любого сайта.Написание CSS-кода, который применяется к веб-сайту, открытому в Twebbrowser?Только для личного просмотра

Thx

Можно ли с помощью этого кода изменить цвет фона поля ввода?Я могу изменить цвет фона и размер шрифта, но, похоже, не могу придумать, как закрасить поле ввода или ограничить его.Это код:

http://www.delphidabbler.com/tips/58

Ответы [ 2 ]

6 голосов
/ 24 февраля 2011

Можно изменить CSS, добавив таблицу стилей из кода после загрузки страницы:

var
   document: IHTMLDocument2;
   stylesheet: IHTMLStyleSheet;
   stylesheetIndex: Integer;
begin

   // Inject CSS Style Sheets
   document := webBrowser1.Document as IHTMLDocument2;

   stylesheetIndex := document.styleSheets.length;
   if stylesheetIndex > 31 then
      raise Exception.Create('Already have the maximum amount of CSS stylesheets');

   stylesheet := document.createStyleSheet('', stylesheetIndex);
   stylesheet.cssText := ...

0 голосов
/ 24 февраля 2011

Используя ответ @ jasonpenny, чтобы добавить таблицу стилей, вам нужно затем изменить границу вокруг входного элемента, который имеет фокус, и это то, что в CSS называется псевдоклассом или селектором focus.Для получения дополнительной информации см. Эти статьи:

http://www.w3schools.com сайт имеет огромное количество информации о веб-разработке.Это также позволяет вам поиграть со многими примерами, чтобы вы могли видеть, какими будут эффекты, когда вы меняете вещи.Если вы пытаетесь научиться делать CSS-стилизацию, возможно, вам лучше разобраться со всей информацией, а не пытаться изучать программирование и язык программирования одновременно.

...