Итак, недавно я работал над проектом, и мне нужны текстовые поля, чтобы получить имя пользователя и пароль пользователя.
Я пробовал использовать *-fx-background-insets: 0 0 0 0, 0, 0, 0;
Вот код: -fx-background: whitesmoke; -fx-background-insets: 0 0 0 0, 0, 0, 0; -fx-background-radius: 0 ;
И вот результат. Как видите, граница сверху все еще сохраняется:
Это то, что вы хотите? * { -fx-primary-color: #007acc; -fx-secondary-color: #4B6EAF; -fx-grey-color: #b9b9b9; -fx-focus-color: -fx-secondary-color; } .text-field { -fx-accent: -fx-primary-color; -fx-background-color: -fx-grey-color, white; -fx-background-insets: 0, 0 0 1 0; -fx-background-radius: 0; } .text-field:focused { -fx-background-color: -fx-primary-color, white; }
Приведенный выше код взят из https://dx.dragan.ba/javafx-textfield-custom-css/
@ SedJ601 извините, что не ответил на ваш комментарий, меня не было. Ваш стиль был именно тем, что я искал! Если можно, сделайте ответ.
Вот стиль, который я получил от https://dx.dragan.ba/javafx-textfield-custom-css/. Он избавляется от всех границ, кроме нижней границы.
CSS
* {
-fx-primary-color: #007acc;
-fx-secondary-color: #4B6EAF;
-fx-grey-color: #b9b9b9;
-fx-focus-color: -fx-secondary-color;
}
.root{
-fx-background-color: -fx-primary-color, white;
}
.text-field {
-fx-accent: -fx-primary-color;
-fx-background-color: -fx-grey-color, white;
-fx-background-insets: 0, 0 0 1 0;
-fx-background-radius: 0;
}
.text-field:focused {
-fx-background-color: -fx-primary-color, white;
}
Выход
Я не думаю, что цвет фона для текстового поля использует -fx-background, поэтому «граница», которую вы видите, — это линейный градиент по умолчанию -fx-background-color для текстового поля. Попробуйте заменить -fx-background: whitesmoke; на -fx-background-color: whitesmoke;.