JavaFX - Border radius <-> Background color

Mehhhh. picture Mehhhh. · Apr 22, 2017 · Viewed 13.6k times · Source

If I add -fx-border-radius and -fx-border-width CSS to a simple GridPane, in its corner the background will not be "cut down".

The CSS:

.payload {
    -fx-hgap: 20px;
    -fx-padding: 40px;

    -fx-background-color: #2969c0;

    -fx-border-radius: 50px;
    -fx-border-width: 5px;
    -fx-border-color: black;
    -fx-effect: dropshadow(three-pass-box, rgba(0, 0, 0, 0.8), 10, 0, 0, 0);
}

The picture about the result: picture link

How do I fix this ?

Answer

Jos&#233; Pereda picture José Pereda · Apr 22, 2017

You need to add the radius property as well to define the background fill. Otherwise it will asume a zero value, as shown in your picture.

You can check the CSS specs here.

You just need to add the -fx-background-radius property:

.payload {
    -fx-hgap: 20px;
    -fx-padding: 40px;

    -fx-background-color: #2969c0;
    -fx-background-radius: 50px;

    -fx-border-radius: 50px;
    -fx-border-width: 5px;
    -fx-border-color: black;
    -fx-effect: dropshadow(three-pass-box, rgba(0, 0, 0, 0.8), 10, 0, 0, 0);
}

background radius