Astro JS+Tailwind CSS下图片无法调整尺寸问题求助
解决Astro+Tailwind图片宽高不生效的问题
核心问题出在你使用的w-108类上——这不是Tailwind CSS的默认宽度工具类,Tailwind默认只提供到w-96(对应384px)的固定宽度类,超出这个范围的自定义数值类不会自动生成对应的CSS,所以图片的宽度设置完全没效果。而另一张图片用的w-20是Tailwind默认包含的类,因此能正常生效。
你可以通过以下两种方式解决:
方式一:使用Tailwind的自定义值语法
直接用方括号包裹具体的宽度值,比如如果w-108是指432px(108×4px,符合Tailwind的4px步长规范),可以写成:
<img class="ml-auto w-[432px]" src={bgimg} alt="Stop">
如果是想使用rem单位,比如27rem(1rem=16px的话,27×16=432px),则写成:
<img class="ml-auto w-[27rem]" src={bgimg} alt="Stop">
方式二:在Tailwind配置中添加自定义宽度
在项目根目录的tailwind.config.js里,扩展theme的width属性,添加108对应的数值:
/** @type {import('tailwindcss').Config} */ export default { content: [ "./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}", ], theme: { extend: { width: { '108': '432px', // 或者你需要的其他数值,比如'27rem' }, }, }, plugins: [], }
配置完成后,重新启动开发服务器,就能正常使用w-108类来设置图片宽度了。
另外可以快速验证:临时把w-108换成w-96,如果图片宽度生效,就完全能确认是自定义宽度类未被识别的问题。
内容的提问来源于stack exchange,提问作者Apple prabha
相关产品推荐
相关产品推荐

