- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 NEXT Image 组件来适应 flexbox 而不收缩。但是,根据其他元素中的内容,它会不断缩小:
这是我的代码:
import React from 'react';
import Image from 'next/image';
type Props = {
imageUrl?: string;
senderName: string;
newMessageCount?: number;
latestMessage: string;
};
export default function MessageBox({
imageUrl,
senderName,
newMessageCount,
latestMessage,
}: Props) {
const isNewMessageDefined = newMessageCount ? true : false;
const newMsgValue =
latestMessage.length > 80
? `${latestMessage.slice(0, 80)}...`
: latestMessage;
return (
<div className='flex w-full gap-2' aria-label='Funfuse-Message-Container'>
<Image
alt='Message Image'
src={imageUrl ?? '/funfuse/avatar-02.jpg'}
className='rounded-full shadow-lg shrink-0 shadow-indigo-500/50'
height={80}
width={80}
objectFit='cover'
objectPosition='center'
/>
<div className='flex flex-col'>
<div
aria-label='Funfuse-Message-Header'
className='flex flex-row items-center gap-2'>
<h2 className='text-xl text-black'>{senderName ?? 'John Doe'}</h2>
{isNewMessageDefined && (
<div className='h-[1.2rem] w-[1.2rem] rounded-full relative bg-funfuse'>
<label className='absolute text-xs text-white transform -translate-x-1/2 -translate-y-1/2 top-1/2 left-1/2'>
{newMessageCount}
</label>
</div>
)}
</div>
<div aria-label='Funfuse-Message-Body'>
<label className='text-sm font-semibold text-gray-400'>
{newMsgValue}
</label>
</div>
</div>
</div>
);
}
谁能帮我确定如何防止出现此问题,因为我一直希望我的图像大小合适且永不缩小。我尝试使用属性:flex-shrink: 0
但那也不起作用。
最佳答案
可能是因为默认Image标签中的layout属性是responsive的,在缩小父级的宽度的同时缩小了自身的尺寸。
设置layout fixed,使图片的宽度保持固定。在这里您可以阅读更多关于 next/image 的信息:https://nextjs.org/docs/api-reference/next/image
return (
<div className='flex w-full gap-2' aria-label='Funfuse-Message-Container'>
<Image
alt='Message Image'
src={imageUrl ?? '/funfuse/avatar-02.jpg'}
className='rounded-full shadow-lg shrink-0 shadow-indigo-500/50'
height={80}
layout="fixed"
width={80}
objectFit='cover'
objectPosition='center'
/>
<div className='flex flex-col'>
<div
aria-label='Funfuse-Message-Header'
className='flex flex-row items-center gap-2'>
<h2 className='text-xl text-black'>{senderName ?? 'John Doe'}</h2>
{isNewMessageDefined && (
<div className='h-[1.2rem] w-[1.2rem] rounded-full relative bg-funfuse'>
<label className='absolute text-xs text-white transform -translate-x-1/2 -translate-y-1/2 top-1/2 left-1/2'>
{newMessageCount}
</label>
</div>
)}
</div>
<div aria-label='Funfuse-Message-Body'>
<label className='text-sm font-semibold text-gray-400'>
{newMsgValue}
</label>
</div>
</div>
</div>
);
关于css - 下一张图片 : Shrinking inside flexbox with tailwind,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72069858/
我想将颜色变量(默认或扩展)用于我的扩展主题,例如: module.exports = { content: ['./index.html', './src/**/*.{js,ts,jsx,t
我们如何在 Tailwind 中设置单个列的宽度? 例如在 Vanilla CSS 我会 .grid-container { display: grid; grid-template-colu
我是 Tailwind CSS 的新手。我在构建 React 项目时遇到了这个错误: The hover: class does not exist. If hover: is a custom cl
为什么 tailwind 中没有太多的百分比单位,例如我想要 50% 的宽度。我知道我可以向它添加自定义配置,但我只是想知道是否有任何特定原因。 最佳答案 我会说这更像是一种个人偏好的编码风格。使用后
我正在尝试将项目对齐到屏幕右侧并使其粘滞。 但正如你在这个 sandbox 中看到的那样它不起作用。 未应用正确的属性。 我该怎么办? 最佳答案 这也行 hossein 关于tailwind-
是否可以在 tailwind 配置中使颜色动态化。 我想从后端通过 api 接收所需的(primary,accent)颜色。 因此用户可以从管理面板更改颜色。 我想从 api 获取这个十六进制值 最佳
我正在尝试使用顺风基于系统默认值启用暗模式。 为此,我使用了插件: Tailwind dark mode 。 我的顺风配置失败如下: defaultTheme = require('tailwindc
我有几个消息框,每个框都有一个数据作者属性。 如果我想在 CSS 中对这些消息框应用样式,我可以这样做: [data-author="Ben"] { background-color: blue;
没有错误,但 Tailwind 没有应用任何样式: 包.json "dependencies": { "tailwindcss": "npm:@tailwindcss/postcss7-com
我想要transition-transform 和transition-shadow,既不是transition-all 也不是只有一个。把这两个不影响,我找不到它的文档,我尝试像这样玩:transi
我正在尝试使用 webpack 5 和 tailwind 2。日志表明大多数事情都设置正确,但没有进行清除。 我跑 NODE_ENV=production webpack --config webpa
我正在尝试 extend使用他们的 tailwind.config.js 的 tailwind css 调色板文件。我的目标是创建一组主要和次要颜色,我可以在设计我的网站时使用它们。我想通过从默认的顺
我一直在使用带有“清除”选项的 Tailwind 来使最终的 css 文件更小且成功。但是,我一直想知道我的方法的效率。我正在处理有很多子文件夹的项目,我都指定如下: purge: {
你如何在 Tailwind 中设置整页背景? 我可以看到使用的唯一属性是 h-screen ,但是当我调整浏览器大小时这不起作用。 这是我的代码: 完整的 html 示例:
将顺风 CSS 包含在我不希望它全局应用的系统中时,我找不到一个很好的方法来确定适用于自定义构建选项的范围。 基本上我想这样做: .tailwind{ @import "tailwindcss
我正在学习 Tailwind CSS。据我了解,如果您想设置元素的样式,请向其添加 Tailwind 实用程序 css 类。想给多个相似元素设置样式怎么办?例如,我有以下 HTML 片段:
我正在学习 Tailwind CSS。据我了解,如果您想设置元素的样式,请向其添加 Tailwind 实用程序 css 类。想给多个相似元素设置样式怎么办?例如,我有以下 HTML 片段:
我需要将所有具有相应响应尺寸的边距值列入白名单。 例子: 'mb-10' 'md:mb-10' 'xl:mb-10' 等等。 这是我现在在我的 tailwind.config.js 中的内容,但它似乎
我一直在尝试使用 Tailwind 来自定义 Quasar 组件,但 Quasar CSS 已经覆盖了大部分 Tailwind CSS。 我在我的 tailwind.config.js 中添加了一个前
我必须并排放置两列。这些列之一具有固定宽度。我真的很想理解为什么一列中的固定宽度在 Tailwind CSS flexbox 上不起作用。 我有以下代码: This title pushed
我是一名优秀的程序员,十分优秀!