【问题标题】:How do I style HTML correctly using an external CSS file? [closed]如何使用外部 CSS 文件正确设置 HTML 样式? [关闭]
【发布时间】:2012-12-13 09:02:34
【问题描述】:

我希望能够从 Internet 加载 HTML 文档,将其显示在 JEditorPane 中,并使用外部 CSS 文件和/或任何 <style>...</style> 标记在 Java 中设置样式。我现在正在做的是使用jEditorPane.setPage(URL);,它的样式不正确。

【问题讨论】:

  • 这个问题有很多变化的部分......你能更具体一点吗?
  • “我希望能够从 Internet 加载 HTML 文档,.. 样式正确。” JEditorPane 在 Hades 中没有滚雪球般的机会渲染 HTML World Wild Web,我们可能期望在 FF 或 Chrome 中看到它,除非它来自我们控制的有限范围的文档(并且非常简单)。否则使用不同的组件(可能来自 JavaFX)。
  • @Makoto 我想使用外部 CSS 文件来设置来自 Internet 的 HTML 文档的样式。

标签: java html css swing jeditorpane


【解决方案1】:

基于 JavaDoc - jEditorPane 支持 前沿 HTML 3.2CSS1 所以简短的回答是,你真的不想尝试用它渲染现代网页。 p>

但是,您可以这样做:

import javax.swing.text.html.HTMLEditorKit;
import javax.swing.text.html.StyleSheet;

HTMLEditorKit kit = new HTMLEditorKit();
jEditorPane.setEditorKit(kit);

URL url = new URL(location of your stylesheet);
StyleSheet styleSheet = new StyleSheet();
styleSheet.importStyleSheet(url)
kit.setStyleSheet(styleSheet);

【讨论】:

    【解决方案2】:

    我认为您无法使用 JEditorPane 呈现现代 HTML。来自docs

    默认情况下,以下类型的内容是已知的:

    ...

    文本/html

    HTML 文本。本例中使用的工具包是类 javax.swing.text.html.HTMLEditorKit,它提供 HTML 3.2 支持。

    HTML 3.2,上世纪定义,即没有 CSS/CSS2。

    您可以使用外部库来呈现我们现在所知道的 HTML。一点点谷歌工作会出现几个选项,或者你可以看看here

    【讨论】:

      猜你喜欢
      • 2013-08-28
      • 1970-01-01
      • 2015-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多