一、字体样式
1、-fx-font-family
字体系列的字符串名称。可以使用系统上可用的实际字体系列名称,也可以使用serif、sans-serif、monospace等通用系列名称。
2、-fx-font-size
字体大小,单位可以是px、pt、em等单位之一,不加单位默认是px。
3、-fx-font-weight
字体粗细。
选项:[normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900]
4、-fx-font-style
字体样式,选项:[ normal | italic | oblique ]
二、边框样式
1、-fx-border-width
边框粗细,单位可以是px、pt、em等单位之一,不加单位默认是px。
如果指定了单个值,则四个边框粗细相同。
例如:-fx-border-width:1;
如果指定了四个值,则它们按顺序作为上、右、下和左边框粗细值。
例如:-fx-border-width:1 2 1 2;
2、-fx-border-color
边框颜色,可以是颜色名称(如red)、十六进制数值(#ff0000)以及rgb、rgba颜色。
如果指定了单个值,则该绘制将用作该区域所有边的边框;
例如:-fx-border-color:#ff0000;
如果指定了四个值,则它们按顺序用于该控件的上、右、下和左边框。如果边框不是矩形,则仅使用第一个值。
例如:-fx-border-color:blue red gray cyan;
3、-fx-border-radius
边框角圆弧半径,单位可以是px、pt、em等单位之一,不加单位默认是px。
-fx-border-radius的值应当和-fx-background-radius的值相同。
4、-fx-border-style
边框线样式,选项:[ none | solid | dotted | dashed | segments( <number>, <number> [, <number>]*) ]
如果指定了单个值,则四个边框样式一样。例如:-fx-border-style:dotted;
如果指定了四个值,则它们按顺序用于该控件的上、右、下和左边框。
例如:-fx-border-style:dotted dashed segments(2,10) solid;
5、-fx-border-insets
边框线距背景色边界内边缘的距离,单位可以是px、pt、em等,不加单位默认是px。
如果指定了单个值,则四个边距都相同。例如:-fx-border-insets:1px;
如果指定了四个值,则它们按顺序作为距上、右、下和左背景色边界的边距值。
例如:-fx-border-insets:1 2 3 4;
三、背景样式
1、-fx-background-color
背景色,其值可以是颜色名称(如red)、十六进制数值(#ff0000)以及rgb、rgba颜色。
2、-fx-background-insets
背景色边界距边框内边缘的距离,单位可以是px、pt、em等,不加单位默认是px。
如果指定了单个值,则四个边距都相同。例如:-fx-background-insets:1px;
如果指定了四个值,则它们按顺序作为距上、右、下和左边框的边距值。
例如:-fx-background-insets:1 2 3 4;
3、-fx-background-radius
背景色角圆弧半径,单位可以是px、pt、em等,不加单位默认是px。
-fx-background-radius的值应当和-fx-border-radius的值相同。
四、文本样式
1、-fx-alignment
文本对齐方式,选项:[ top-left | top-center | top-right | center-left | center | center-right bottom-left | bottom-center | bottom-right | baseline-left | baseline-center | baseline-right ]
默认:center-left。
2、-fx-wrap-text
文本是否可以折行,选项:[true | false]
默认:false。
3、-fx-underline
文本是否下划线,选项:[true | false]
默认:false。
4、-fx-content-display
控件内容的显示方式,选项:[ top | right | bottom | left | center | right | graphic-only | text-only ]
默认:left。
5、-fx-label-padding
文本距控件边缘的间隙,单位可以是px、pt、em等,不加单位默认是px。
如果指定了单个值,则距四个边框的间隙都相同。例如:-fx-label-padding:2;
如果指定了四个值,则它们按顺序作为距上、右、下和左边框的间隙值。
例如:-fx-label-padding:2,2,2,2;
默认间隙是:0,0,0,0
6、-fx-text-fill
文本颜色,其值可以是颜色名称(如red)、十六进制数值(#ff0000)以及rgb、rgba颜色。
五、其它常用样式
1、-fx-opacity
控件的不透明度,其值范围:0.0-1.0,默认值为1(完全不透明)。
2、-fx-effect
控件样式效果,主要用于使用linear-gradient、dropshadow等JFX CSS方法。
3、-fx-rotate
控件的旋转角度(以度为单位)。 0 度位于 3 点钟方向(直接向右)。角度值顺时针方向为正。旋转是绕中心旋转。
默认值为0。
4、-fx-scale-x
控件x方向的缩放比例,默认值是1,控件中心为缩放中心。
5、-fx-scale-y
控件y方向的缩放比例,默认值是1,控件中心为缩放中心。
6、-fx-scale-z
控件z方向的缩放比例,默认值是1,控件中心为缩放中心。
六、几种常用的JavaFX CSS方法
1、linear-gradient线性渐变。
语法:linear-gradient( [ [from <point> to <point>] | [ to <side-or-corner>], ]? [ [ repeat | reflect ], ]? <color-stop>[, <color-stop>]+)
其中:
from <point> to <point>:从起点到终点。
to <side-or-corner>:渐变方向,可以是水平或垂直方向,也可以是对角方向。
repeat | reflect:重复|反射。
<color-stop>:停止颜色。
例如:
-fx-background-color和-fx-text-fill都可以使用下面语句:
linear-gradient(to bottom right,reflect, red, black)
linear-gradient(from 0% 0% to 100% 100%, red 0%, black 100%)
linear-gradient(from 0px 0px to 0px 50px, gray, darkgray 50%, dimgray 99%, white)
2、radial-gradient径向渐变
语法:radial-gradient([ focus-angle <angle>, ]? [ focus-distance <percentage>, ]? [ center <point>, ]? radius [ <length> | <percentage> ] [ [ repeat | reflect ], ]? <color-stop>[, <color-stop>]+)
其中:
focus-angle <angle>:焦点角度<角>。
focus-distance <percentage>:聚焦距离<百分比>。
center <point>:中心<点>。
radius [ <length> | <percentage> ]:半径[<长度>|<百分比>]。
repeat | reflect:重复|反射。
<color-stop>:停止颜色。
例如:
-fx-background-color和-fx-text-fill都可以使用下面语句:
radial-gradient(radius 100%, red, darkgray, black)
radial-gradient(focus-angle 45deg, focus-distance 20%, center 25% 25%, radius 50%, reflect, gray, darkgray 75%, dimgray)
径向渐变创建一个渐变,穿过从中心点到半径向外辐射的所有停止颜色。如果未给出中心点,则中心默认为 (0,0)。百分比值与所填充区域的大小相关。
3、dropshadow投影
语法:dropshadow( <blur-type> , <color> , <number> , <number> , <number> , <number> )
其中:
blur-type:模糊类型。选项:[gaussian|one-pass-box|three-pass-box| two-pass-box ]。
Color:阴影颜色。
Number:阴影模糊内核的半径。在 [0.0 - 127.0] 范围内,典型值为 10。
Number:阴影阻塞值。值应在[0.0 - 1.0]范围内。
Number:x 方向上的阴影偏移(以像素为单位)。
Number:y 方向上的阴影偏移(以像素为单位)。
例如:
Button1.Style="-fx-effect:dropshadow(three-pass-box,gray,5,0.0,0,1);"
4、innershadow内投影
语法:innershadow( <blur-type> , <color> , <number> , <number> , <number> , <number> )
其中:各参数及用法与dropshadow相同。
例如:
Button1.Style="-fx-effect:innershadow(three-pass-box,gray,5,0.0,0,1);"
以上是常用的JavaFX CSS属性归纳汇总。JavaFX CSS的属性、方法还有很多,有需要有兴趣的朋友可以访问JavaFX CSS主页。