Я пытаюсь изменить цвет шрифта различных веб-элементов в разных областях. В основном это нормально работает, пока я использую. Я использую вот так:
<font color='BLUE'>
<DIV>
<SPAN style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; FLOAT: none; : rgb(34,34,34); FONT: 13px Calibri; -webkit-text-size-adjust: auto">
</SPAN>
</DIV>
<DIV>
<SPAN style="BORDER-TOP- : ; WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; FLOAT: none; : rgb(0,0,0); FONT: large arial, sans-serif; -webkit-text-size-adjust: auto">abc
</SPAN>
</DIV>
</font>
или просто
<font color='BLUE'>
<P>abc
</P>
</font>
НО, когда я пытаюсь изменить цвет шрифта и формирование некоторых текстовых элементов, которые находятся под тегами, он не работает!
<font color='Blue'>
<DIV>
<TABLE style="WIDTH: 165pt; BORDER-COLLAPSE: collapse; border=0 cellSpacing=0 cellPadding=0 width=219>
<COLGROUP>
<COL style="WIDTH: 21pt; mso-width-source: userset; mso-width-alt: 1024" width=28>
<COL style="WIDTH: 92pt; mso-width-source: userset; mso-width-alt: 4498" width=123>
<TBODY>
<TR style="HEIGHT: 66pt; mso-height-source: userset" height=88>
<TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; - : transparent; WIDTH: 165pt; HEIGHT: 66pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8" class=xl65 height=88 width=219 colSpan=4><FONT size=2 face=Calibri></FONT>
</TD></TR>
<TR style="HEIGHT: 107.25pt; mso-height-source: userset" height=143>
<TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; - : transparent; WIDTH: 165pt; HEIGHT: 107.25pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8" class=xl65 height=143 width=219 colSpan=4>
<FONT size=2 face=Calibri>
<SPAN style="mso-spacerun: yes"> </SPAN><BR><BR></FONT></TD></TR>
</TBODY>
</TABLE>
</DIV>
</font>
Пожалуйста, предложите мне, что мне делать, если я хочу сохранить общее правило для изменения цветов шрифта для всех форматов. Это я использую в некоторых приложениях, где я получаю входные данные от пользователя, где они вставляют тексты в теги html, мне просто нужно сделать цвет шрифта похожим на тексты и сохранить одинаковый формат для всех входов.
PS Чтобы сделать сценарий понятным, с сервера я на самом деле получаю все html-теги и тексты, добавляя в начале и конце строки, загружая новую String в веб-просмотр следующим образом:
String str = "abc"; //actaully what I am getting from backend with html tags
if(ann.get() != null)
String content = "<font color='Blue'>";
content = content + Str;
content = content + "</font>";
details.loadData(content,"text/html","UTF-8");
details.setBackgroundColor(Color.Black);
Предоставьте соответствующие классы вашим элементам, а затем вы можете использовать CSS для стилей этих классов.
Например
table {color: white}
td.myclass {color: green}
Разметка с элементом div
или table
внутри элемента font
является недопустимой в соответствии со всеми спецификациями HTML. Тем не менее, браузеры традиционно переваривали его, но так, что свойства шрифта не влияют на содержимое внутри таблицы. Это все еще, как современные браузеры ведут себя в режиме Quirks.
Как ни странно, в стандартном режиме современные браузеры применяют цвет шрифта для содержимого таблицы. (Таким образом, в так называемом стандартном режиме соблюдается некоторая нестандартная разметка, которая иначе игнорируется!) Однако переключение в режим стандартов путем <!doctype html>
в самом начале документа очень опасно. Код, который был разработан для работы в режиме Quirks, может полностью разрушиться в стандартном режиме, или он может работать почти одинаково или что-то среднее между ними.
Если вы специально хотите установить цвет внутри таблиц страницы, вы можете добавить следующий элемент:
<style>
th, td { color: blue }
</style>
Он должен войти в head
часть синтаксисом HTML, но на самом деле он хорошо работает и в части body
, поэтому вы можете ударить его (или после!) Таблицы, если нужно.