focus:outline-none 无法使用 Tailwind CSS 和 Laravel
focus:outline-none not working Tailwind CSS with Laravel
我正在为我的 Laravel 应用程序使用 Tailwind CSS,并且想删除输入框上的焦点边框。根据文档,focus:outline-none
应该可以做到这一点,尽管它对我不起作用并且边框仍然出现在焦点上。
看来我的目标是错误的,就像我做的那样 focus:outline-black
,我可以看到一个黑色轮廓以及焦点上的标准蓝色轮廓。
focus:border-none
也没有解决问题。
有什么想法吗?
<input class="text-input" placeholder="Your Name" />
.text-input {
@apply focus:outline:none;
}
tailwind.config.js
const defaultTheme = require('tailwindcss/defaultTheme');
const colors = require('tailwindcss/colors');
module.exports = {
mode: 'jit',
purge: [
'./vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php',
'./vendor/laravel/jetstream/**/*.blade.php',
'./storage/framework/views/*.php',
'./resources/views/**/*.blade.php',
],
theme: {
extend: {
fontFamily: {
sans: ['Nunito', ...defaultTheme.fontFamily.sans],
},
},
colors: {
black: colors.black,
white: colors.white,
gray: colors.trueGray,
indigo: colors.indigo,
red: colors.rose,
yellow: colors.amber,
blue: colors.blue,
},
},
plugins: [require('@tailwindcss/forms'), require('@tailwindcss/typography')],
};
webpack.mix.js
const mix = require('laravel-mix');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel applications. By default, we are compiling the CSS
| file for the application as well as bundling up all the JS files.
|
*/
mix.js('resources/js/app.js', 'public/js')
.postCss('resources/css/app.css', 'public/css', [
require('postcss-import'),
require('tailwindcss'),
]);
if (mix.inProduction()) {
mix.version();
}
也许您可以尝试在 class 中直接添加 focus:outline-none
。
现在有同样的问题,Laravel 8,Inertia、Breeze 和 Tailwind:当我在一个元素上设置 outline-none
时,它被忽略了。其他一切似乎都正常工作。
唯一解决它的方法是在元素本身上添加 css: border-transparent focus:border-transparent focus:ring-0
。
!outline-none
这帮我修好了。
正确的方法:border-none focus:ring-0
如果边框不存在,您无需费心将其设置为透明。
这是我使用 TailwindCSS 时的配置 <input />
border // border-width: 1px;
border-slate-700 // DEFAULT border-color
hover:border-slate-500 // HOVER border-color
focus:border-blue-500 // WHEN WRITE border-color
focus:outline-none // NONE OUTLINE WHEN WRITE
我正在为我的 Laravel 应用程序使用 Tailwind CSS,并且想删除输入框上的焦点边框。根据文档,focus:outline-none
应该可以做到这一点,尽管它对我不起作用并且边框仍然出现在焦点上。
看来我的目标是错误的,就像我做的那样 focus:outline-black
,我可以看到一个黑色轮廓以及焦点上的标准蓝色轮廓。
focus:border-none
也没有解决问题。
有什么想法吗?
<input class="text-input" placeholder="Your Name" />
.text-input {
@apply focus:outline:none;
}
tailwind.config.js
const defaultTheme = require('tailwindcss/defaultTheme');
const colors = require('tailwindcss/colors');
module.exports = {
mode: 'jit',
purge: [
'./vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php',
'./vendor/laravel/jetstream/**/*.blade.php',
'./storage/framework/views/*.php',
'./resources/views/**/*.blade.php',
],
theme: {
extend: {
fontFamily: {
sans: ['Nunito', ...defaultTheme.fontFamily.sans],
},
},
colors: {
black: colors.black,
white: colors.white,
gray: colors.trueGray,
indigo: colors.indigo,
red: colors.rose,
yellow: colors.amber,
blue: colors.blue,
},
},
plugins: [require('@tailwindcss/forms'), require('@tailwindcss/typography')],
};
webpack.mix.js
const mix = require('laravel-mix');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel applications. By default, we are compiling the CSS
| file for the application as well as bundling up all the JS files.
|
*/
mix.js('resources/js/app.js', 'public/js')
.postCss('resources/css/app.css', 'public/css', [
require('postcss-import'),
require('tailwindcss'),
]);
if (mix.inProduction()) {
mix.version();
}
也许您可以尝试在 class 中直接添加 focus:outline-none
。
现在有同样的问题,Laravel 8,Inertia、Breeze 和 Tailwind:当我在一个元素上设置 outline-none
时,它被忽略了。其他一切似乎都正常工作。
唯一解决它的方法是在元素本身上添加 css: border-transparent focus:border-transparent focus:ring-0
。
!outline-none
这帮我修好了。
正确的方法:border-none focus:ring-0
如果边框不存在,您无需费心将其设置为透明。
这是我使用 TailwindCSS 时的配置 <input />
border // border-width: 1px;
border-slate-700 // DEFAULT border-color
hover:border-slate-500 // HOVER border-color
focus:border-blue-500 // WHEN WRITE border-color
focus:outline-none // NONE OUTLINE WHEN WRITE