Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么不是';我的CSS在Java中不能正常工作吗?_Java_Html_Css_Swing - Fatal编程技术网

为什么不是';我的CSS在Java中不能正常工作吗?

为什么不是';我的CSS在Java中不能正常工作吗?,java,html,css,swing,Java,Html,Css,Swing,你能帮我吗?我试图用Java创建一些代码,通过实现CSS在JEditorPane中执行html代码 我让它实现一些CSS编码,但它似乎忽略了编码中的“float:”位。在JSFiddle()上,我让它完美地运行,但在Java/NB上,它创建了一个容器,左div,这个容器很小,应该是右div,但是它将它放在左div的下面,而不是右边。我想的是Java和HTMLEditorKit以及样式表不支持我想做的事情。有人能澄清一下吗 编辑: 似乎只支持HTML3.2。是否有可能的解决方法 import ja

你能帮我吗?我试图用Java创建一些代码,通过实现
CSS
JEditorPane
中执行html代码

我让它实现一些
CSS
编码,但它似乎忽略了编码中的
“float:”
位。在JSFiddle()上,我让它完美地运行,但在Java/NB上,它创建了一个容器,左
div
,这个容器很小,应该是右
div
,但是它将它放在左
div
的下面,而不是右边。我想的是Java和
HTMLEditorKit
以及
样式表
不支持我想做的事情。有人能澄清一下吗

编辑:

似乎只支持
HTML3.2
。是否有可能的解决方法

import java.awt.Dimension; 
import javax.swing.*;
import javax.swing.text.Document;
import javax.swing.text.html.HTMLEditorKit;
import javax.swing.text.html.StyleSheet;

@SuppressWarnings("serial")
public class jBulletins extends JPanel {

    javax.swing.JEditorPane bulletinBoard = new javax.swing.JEditorPane();

    public jBulletins() {

        Dimension d = new Dimension();
        d.setSize(800, 600);

        bulletinBoard.setPreferredSize(d);
        bulletinBoard.setContentType("text/html"); // NOI18N

        add(new JScrollPane(bulletinBoard));

        loadBulletins();
    }

    private void loadBulletins() {

        //<editor-fold defaultstate="collapsed" desc="HTML/CSS Script">
        String eBullStyles = "#divMsgs{ "
                + "height: 99px; "
                + "margin: auto; "
                + "background-color: #3399FF; "
                + "} "
                + "#divLeft{ "
                + "float: left; "
                + "width: 110px; "
                + "height: 85px; "
                + "border: 2px #6666ff outset; "
                + "padding: 5px; "
                + "background-color: #189cd8; "
                + "color: #ffffff; "
                + "font-size: 11px; "
                + "font-weight: normal; "
                + "font-family: Tahoma, Geneva, sans-serif; "
                + "font-style: normal; "
                + "text-decoration: inherit; "
                + "} "
                + "#divRight{ "
                + "float: right; "
                + "width: 50px; "
                + "height: 85px; "
                + "border: 2px #6666ff outset; "
                + "background-color: #189cd8; "
                + "padding: 5px; "
                + "color: #ffffff; "
                + "font-size: 11px; "
                + "font-weight: normal; "
                + "font-family: Tahoma, Geneva, sans-serif; "
                + "font-style: normal; "
                //+ "text-decoration: inherit; "
                + "line-height: 1.3em; "
                + "}"; //</editor-fold>

        bulletinBoard.setContentType("text/html");
        bulletinBoard.setText("");

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

        // add some styles to the html
        StyleSheet styleSheet = kit.getStyleSheet();
        styleSheet.addRule(eBullStyles);

        Document setdoc = kit.createDefaultDocument();
        bulletinBoard.setDocument(setdoc);

        String initial = "<div id=\"divMsgs\">"
                + "<div id=\"divLeft\">"
                + "Hello Bob"
                + "</div>"
                + "<div id=\"divRight\">"
                + "How are you today?"
                + "</div>"
                + "</div>";

        try {
            Document doc = bulletinBoard.getDocument();
            bulletinBoard.setText(initial);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

    private static void createAndShowGui() {
        jBulletins mainPanel = new jBulletins();
        JFrame frame = new JFrame("Bulletin Board");
        frame.setSize(800, 600);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(mainPanel);
        frame.pack();
        frame.setLocationByPlatform(true);
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createAndShowGui();
            }
        });
    }
}
导入java.awt.Dimension;
导入javax.swing.*;
导入javax.swing.text.Document;
导入javax.swing.text.html.HTMLEditorKit;
导入javax.swing.text.html.StyleSheet;
@抑制警告(“串行”)
公共类jBulletins扩展了JPanel{
javax.swing.JEditorPane bulletinBoard=新javax.swing.JEditorPane();
公共jBulletins(){
维度d=新维度();
d、 设置大小(800600);
公告板。设置首选尺寸(d);
bulletinBoard.setContentType(“text/html”);//NOI18N
添加(新JScrollPane(公告板));
加载公告();
}
私有void加载公告(){
//
字符串eBullStyles=“#divMsgs{”
+“高度:99px;”
+“保证金:自动;”
+“背景色:#3399FF;”
+ "} "
+“#左{”
+“浮动:左;”
+“宽度:110px;”
+“高度:85px;”
+“边界:2px#6666ff开始;”
+“填充:5px;”
+“背景色:#189cd8;”
+“颜色:#ffffff;”
+“字体大小:11px;”
+“字体大小:正常;”
+字体系列:塔荷马,日内瓦,无衬线
+“字体样式:正常;”
+“文本装饰:继承;”
+ "} "
+“#divRight{”
+“浮动:对
+“宽度:50px;”
+“高度:85px;”
+“边界:2px#6666ff开始;”
+“背景色:#189cd8;”
+“填充:5px;”
+“颜色:#ffffff;”
+“字体大小:11px;”
+“字体大小:正常;”
+字体系列:塔荷马,日内瓦,无衬线
+“字体样式:正常;”
//+“文本装饰:继承;”
+“线高:1.3em;”
+ "}"; //
bulletinBoard.setContentType(“文本/html”);
公告板内。setText(“”);
HTMLEditorKit=新的HTMLEditorKit();
公告板。设置编辑工具(套件);
//在html中添加一些样式
StyleSheet StyleSheet=kit.getStyleSheet();
样式表.addRule(eBullStyles);
Document setdoc=kit.createDefaultDocument();
公告板。setdoc文件(setdoc);
String initial=“”
+ ""
+“你好,鲍勃”
+ ""
+ ""
+“你今天好吗?”
+ ""
+ "";
试一试{
文档文档=bulletinBoard.getDocument();
公告板内文字setText(首字母);
}捕获(例外情况除外){
例如printStackTrace();
}
}
私有静态void createAndShowGui(){
jBulletins mainPanel=新jBulletins();
JFrame框架=新JFrame(“公告板”);
框架设置尺寸(800600);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(主面板);
frame.pack();
frame.setLocationByPlatform(真);
frame.setVisible(true);
}
公共静态void main(字符串[]args){
SwingUtilities.invokeLater(新的Runnable(){
公开募捐{
createAndShowGui();
}
});
}
}

JEditorPane只提供HTML3.2支持,所以我打赌它不支持我们使用的所有css属性。

根据,Swing组件只支持HTML3.2

根据这一点,一些CSS属性不会呈现:

以下描述了渲染引擎支持的CSS属性:

字体系列
  • 字体样式
  • 字体大小(支持相对单位)
  • 字体重量
  • 字体
  • 颜色
  • 背景色(透明除外)
  • 背景图像
  • 背景重复
  • 背景位置
  • 背景
  • 文本装饰(闪烁和上划线除外)
  • 垂直对齐(仅sup和sup)
  • 文本对齐(对齐被视为居中)
  • 页边空白顶部
  • 右边距
  • 页边距底部
  • 左边距
  • 页边距
  • 填充顶部
  • 右侧填充
  • 填充底部
  • 左侧填充
  • 填充
  • 边框顶部样式
  • 右边框样式
  • 边框底部样式
  • 左边框样式
  • 边框样式(仅支持插入、起始和无)
  • 边框顶部颜色
  • 右边框颜色
  • 边框底色
  • 边框左侧颜色
  • 边框颜色
  • 列表样式图像
  • 列表样式类型
  • 列出样式位置
  • 以下内容已建模,但当前未渲染。 字体变体
  • 背景