Веб-браузер абсолютно не реагирует на свойство background-color CSS

#c# #html #css #wpf

#c# #HTML #css — код #wpf

Вопрос:

Насколько мне известно, синтаксис и значения в порядке. Смотрите ниже.

 * { 
  overflow: hidden; 
  background-color: rgba(30, 30, 30, .9); 
  color: rgb(242, 238, 229); 
  font-size: 18px; 
  font-family: Segoe UI,...;
}
 

background-color это единственное свойство, которым, похоже, пренебрегают. !important не оказало никакого влияния.

Вот шаблонный HTML:

 <!DOCTYPE html>
<html>
  <head>
    <link rel='stylesheet' type='text/css' href='data:text/css;charset=UTF-8,{0}'>
  </head>
    <body>
      {1}
    </body>
</html>
 

(Если вам интересно, что {0,1} это такое, я форматирую это в приложении C # WPF, а затем перемещаю HTML-код к встроенному веб-браузеру)

0 соответствует CSS в кодировке URI, который работает по назначению.

Для справки, вот мой код в моем приложении WPF:

 TextRange rng = new TextRange(
    TextEntry.Document.ContentStart,
    TextEntry.Document.ContentEnd);

string cssString = ":not(h1,h2,h3,h4,h5,h6) { font-size: 11px; } * { overflow: hidden; background-color: rgba(30, 30, 30, .9); color: rgb(242, 238, 229); font-family: Segoe UI...; }";

string htContent = string.Format("<!DOCTYPE html><html><head><link rel='stylesheet' type='text/css'" 
                     "href='data:text/css;charset=UTF-8,{0}'></head><body>{1}</body></html>",
                   Uri.EscapeUriString(cssString),
                   Markdig.Markdown.ToHtml(rng.Text));
 

Независимо от того, насколько конкретно я разбираюсь в этом background-color свойстве, оно, к сожалению, останется без ответа.

Это xaml веб-браузера, если это поможет.

 <WebBrowser x:Name="Markdown" HorizontalAlignment="Left" Height="406" Margin="16,36,-9,0" VerticalAlignment="Top" Width="800" Grid.RowSpan="2"/>
 

Все другие сообщения, которые я мог найти по этому поводу, были из-за элемента, несколько переопределяющего стиль, хотя из-за того, насколько шаблонен этот HTML amp; CSS, я не смог найти ничего подобного.

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

1. Встраивание свойства стиля в элемент body также не работает.

Ответ №1:

Попробуйте вместо этого новейший элемент управления браузером (WebView2), он может сработать

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

1. Так это проблема с веб-браузером? Откуда вы знаете?

2. Я не знаю, но у нас было много проблем с веб-браузером Wpf по умолчанию на работе, и я просто хочу посоветовать вам не использовать его. Взгляните на примеры github.com/MicrosoftEdge/WebView2Samples/tree/master/SampleApps / … и решите, что вам нужно, сражаться со старым, устаревшим встроенным браузером в Wpf или использовать последний браузер на базе Chromium, выпущенный Microsoft, несмотря на то, что он все еще немного сырой.

3. Я посмотрю на это. Я ценю это.

4. Вы случайно не знаете, как загрузить мою HTML-строку в это? Попытка установить свойство source всегда кричит, что схема URI недействительна, когда я пытаюсь все это закодировать.

5. Чтобы добавить, я не знаю, что установить в качестве исходного свойства. Поскольку у меня нет HTML-файлов, только строка содержимого html.