CSS实现动态内容圆形高亮与居中显示教程

CSS实现动态内容圆形高亮与居中显示教程

本教程详细讲解如何利用CSS为动态内容(如数字)创建完美的圆形背景高亮,并确保内容在圆内水平垂直居中。我们将通过border-radius: 50%定义圆形,并结合display: inline-flex、justify-content: center和align-items: center实现内容对齐,同时提供HTML结构优化和最佳实践建议。

核心CSS属性解析:创建圆形与内容居中

要为动态内容创建一个完美的圆形背景并使其内容居中,我们需要组合使用几个关键的css属性。

border-radius: 50%:创建完美圆形border-radius属性用于设置元素边框的圆角。当width和height相等时,将其值设置为50%可以确保元素呈现为一个完美的圆形。例如,一个width: 20px; height: 20px;的元素,应用border-radius: 50%;后将变为一个直径20px的圆形。

display: inline-flex:启用弹性布局并保持行内特性为了能够灵活地对内容进行居中对齐,我们需要将包裹内容的元素设置为弹性容器。

display: flex 会使元素变为块级弹性容器,独占一行。display: inline-flex 会使元素变为行内级弹性容器,允许其与其他行内元素并排显示,这对于在文本流中嵌入圆形高亮非常有用。

justify-content: center:水平居中在弹性容器中,justify-content属性用于沿着主轴(默认为水平方向)对齐弹性项目。将其设置为center可以使内容在水平方向上居中。

align-items: center:垂直居中align-items属性用于沿着交叉轴(默认为垂直方向)对齐弹性项目。将其设置为center可以使内容在垂直方向上居中。

通过这四个属性的组合,我们可以精确地控制圆形背景的形状和内部内容的对齐方式。

HTML结构与CSS类名管理

为了将动态内容包裹在圆形背景中,我们需要一个合适的HTML结构,并确保CSS类名在HTML和CSS中保持一致。

立即学习“前端免费学习笔记(深入)”;

原始HTML结构示例:

    Galley Details
  • {galleyCartsDet[0].quantity} Full Cart

  • {galleyCartsDet[1].quantity} Half Cart

  • {galleyCartsDet[2].quantity} SMU

  • {galleyCartsDet[3].quantity} Stowage

优化后的HTML结构:

要为 {galleyCartsDet[0].quantity} 这样的动态内容添加圆形高亮,我们需要将其包裹在一个独立的元素中,并应用相应的CSS类。同时,应避免在

元素末尾使用不规范的
标签,因为本身就是块级元素,通常通过CSS(如margin或padding)来控制间距。

    Galley Details
  • {galleyCartsDet[0].quantity}
    Full Cart
  • {galleyCartsDet[1].quantity}
    Half Cart
  • {galleyCartsDet[2].quantity}
    SMU
  • {galleyCartsDet[3].quantity}
    Stowage

关键点:

包裹元素: 将动态内容(例如{galleyCartsDet[0].quantity})放入一个div或其他行内元素(如span)中。类名一致性: 确保HTML中的class属性值与CSS选择器中的类名完全匹配(例如,carts_circle)。在React等JavaScript框架中,HTML属性会使用驼峰命名法className,但在CSS选择器中仍使用标准的小写加连字符命名.class-name。本教程以通用HTML/CSS为准,使用class。避免不规范标签: 移除元素后的
标签。如果需要列表项之间的间距,请使用CSS的margin-bottom或padding-bottom。

完整代码示例

结合上述HTML结构和CSS属性,我们可以实现预期的圆形高亮效果。

CSS样式:

.carts_circle {    border-radius: 50%; /* 创建完美圆形 */    width: 24px; /* 根据内容和设计调整宽度 */    height: 24px; /* 确保与宽度相等,以保持圆形 */    background: yellow; /* 设置背景颜色 */    color: #333; /* 文本颜色 */    font-weight: bold; /* 文本加粗 */    font-size: 14px; /* 字体大小 */    display: inline-flex; /* 启用行内弹性布局 */    justify-content: center; /* 水平居中内容 */    align-items: center; /* 垂直居中内容 */    margin-right: 8px; /* 与后续文本保持间距 */    box-sizing: border-box; /* 确保padding和border包含在width/height内 */}/* 列表项间距优化 */.galley-carts ul li {    margin-bottom: 5px; /* 为每个列表项添加底部外边距 */    line-height: 1.5; /* 优化行高 */}

HTML结构:

            动态内容圆形高亮            /* 示例CSS,与上文相同 */        .carts_circle {            border-radius: 50%;            width: 24px;            height: 24px;            background: yellow;            color: #333;            font-weight: bold;            font-size: 14px;            display: inline-flex;            justify-content: center;            align-items: center;            margin-right: 8px;            box-sizing: border-box;        }        .galley-carts ul li {            margin-bottom: 5px;            line-height: 1.5;            list-style: none; /* 移除列表默认的圆点或数字 */        }        .galley-carts ul {            padding-left: 0; /* 移除ul默认的左内边距 */        }        .floatRight {            /* 假设这是为了某种布局,这里保留 */        }        
    Galley Details
  • 10
    Full Cart
  • 5
    Half Cart
  • 2
    SMU
  • 8
    Stowage

在上述示例中,我们用硬编码的数字代替了{galleyCartsDet[x].quantity},以便直接在浏览器中测试。实际应用中,这些数字将由后端数据或JavaScript动态填充。

注意事项与优化

尺寸适配:width、height与paddingwidth和height决定了圆形的大小。如果圆形内包含的数字位数不固定,可能需要调整这两个值,或者考虑使用padding而非固定的width/height,让内容撑开圆形,同时保持border-radius: 50%。例如:

.carts_circle {    border-radius: 50%;    background: yellow;    color: #333;    font-weight: bold;    font-size: 14px;    padding: 4px 8px; /* 上下4px,左右8px */    min-width: 24px; /* 确保最小宽度,防止单数字过小 */    text-align: center; /* 对齐文本 */    display: inline-block; /* 或 inline-flex */    box-sizing: border-box;    /* 如果使用padding,可以不设置固定width/height,让内容撑开 */    /* 如果要保持严格圆形,且内容可变,则需js计算或固定位数 */}

然而,使用padding并期望完美圆形,通常需要内容是单行且字符数大致相等,否则可能变成椭圆形。对于严格的圆形,固定width和height,并确保其足够容纳最大可能的内容是更直接的方法。

文本溢出处理如果动态数字过大,超出width/height设置的圆形范围,可能会溢出。可以通过CSS属性如overflow: hidden;来裁剪溢出部分,或者调整圆形尺寸以适应内容。

语义化与可访问性始终使用语义化的HTML标签。避免滥用
进行布局,而应利用CSS的margin、padding等属性。确保颜色对比度足够高,以满足可访问性要求。

框架(如React)中的className如果在React、Vue等前端框架中使用JSX或模板语法,HTML属性如class会被写作className。但在CSS文件中,选择器仍然是.class-name。本教程中的class适用于标准HTML。

总结

通过本教程,我们学习了如何利用CSS的border-radius: 50%创建完美的圆形背景,并结合display: inline-flex、justify-content: center和align-items: center实现内容在圆形中的水平垂直居中。同时,我们强调了优化HTML结构、确保类名一致性以及一些重要的CSS实践和注意事项。掌握这些技巧,可以帮助开发者为网页中的动态数据创建更具吸引力和专业性的视觉效果。

以上就是CSS实现动态内容圆形高亮与居中显示教程的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1519283.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
利用CSS为动态数字创建圆形背景高亮效果
上一篇 2025年12月20日 12:18:12
使用CSS为动态内容创建圆形背景高亮效果
下一篇 2025年12月20日 12:18:30

相关推荐

  • 扩展 Laravel Eloquent 的能力:fattureincloud/eloquence-hookable 的实践

    最近在开发一个 laravel 项目时,需要在用户模型保存之前对某些属性进行特殊处理。例如,在保存用户邮箱之前,需要检查邮箱是否已经存在,以及进行格式验证。虽然可以通过在模型中直接编写逻辑来实现,但这会使模型代码变得臃肿,难以维护。这时,我发现了 fattureincloud/eloquence-h…

    用户投稿 2026年9月4日
    000
  • 途虎养车空调滤芯怎么换_途虎养车空调滤芯更换图解

    汽车空调出风量变小、有异味或制冷差可能是空调滤芯堵塞所致,可通过途虎养车更换:一、拆卸手套箱,先清空并挤压内壁脱离卡扣,拔出右侧卡扣后缓慢放下;二、打开滤芯盖板,滑动取下盖板后水平抽出旧滤芯,检查脏污情况;三、安装新滤芯需注意气流方向标识,箭头指向车辆前方或向上,确保完全插入;四、复位时先装回盖板并…

    2026年9月4日
    100
  • 渗透测试安全检测漏洞

    最近由于渗透测试任务繁重,笔者一直未能抽出时间撰写文章。今天,我们sine安全的渗透主管将为大家普及java安全测试的基础知识。许多客户希望了解具体的javascript调用漏洞、提交payload的过程,以及如何获取最高权限、绕过登录等执行命令漏洞的安全检测方法。 4.4.1.1. 显式原型和隐式…

    2026年9月4日
    000
  • 使用本地化资源动态配置 Java Switch 语句

    本文探讨了在 Java 中如何根据不同的区域设置,动态地配置 `switch` 语句。由于 `switch` 语句的 `case` 标签必须是常量表达式,直接使用资源文件中的字符串值是不允许的。本文提供了两种解决方案:使用 `if-else if` 语句替代 `switch`,以及使用 `Map` …

    2026年9月4日
    000
  • edge浏览器怎么截图 edge浏览器截图方法

    edge浏览器怎么截图 edge浏览器截图方法edge浏览器怎么截图 edge浏览器截图方法edge浏览器怎么截图 edge浏览器截图方法edge浏览器怎么截图 edge浏览器截图方法

    点击浏览器右上角类似笔记本图标的“做web笔记”按钮,会打开一个菜单栏。 菜单栏左侧包括“笔”、“荧光笔”、“橡皮擦”、“添加键入的笔记”和“剪辑”功能, 右侧则有“做WEB笔记”、“共享”以及“退出”选项。 使用截图功能时,点击“剪辑”,界面上会出现“拖动以复制区域”的提示,同时鼠标指针变为“+”…

    2026年9月4日 用户投稿
    000
  • 告别支付集成难题:MONEI PHP SDK 助力高效支付

    在最近的项目中,我们需要集成一个安全的、高效的支付网关。起初,我们计划自己开发支付流程,这听起来似乎可行,但很快我们发现自己陷入了困境。首先,确保支付流程的安全性是一项艰巨的任务,需要处理各种潜在的安全漏洞。其次,我们需要支持多种支付方式,这需要大量的代码编写和测试工作,以确保与各种支付提供商的兼容…

    用户投稿 2026年9月4日
    000
  • C++中如何用Lambda函数实现私有函数仅供公有函数调用?

    C++中使用Lambda函数模拟私有函数,仅供公有函数调用 问题:如何在C++中实现类似于其他语言中“私有函数仅供公有函数调用”的特性? 解决方法:虽然C++没有直接的“私有函数”概念像Java或C#那样,但我们可以巧妙地利用Lambda表达式来模拟这种行为。Lambda表达式创建的匿名函数,其作用…

    2026年9月4日
    000
  • 美信科技:湾区总部工业园预计今年上半年投入使用

    美信科技湾区总部工业园预计上半年投入使用,积极应对市场挑战。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 美信科技近日在投资者互动平台透露,其位于湾区总部的工业园区目前正在装修,计划于今年上半年正式投入运营。 面对严峻的市场竞争,公司持续…

    2026年9月4日
    000
  • 百度浏览器如何设置无图模式 百度浏览器设置无图模式教程

    百度浏览器怎么开启无图模式?用户如何在该应用中找到无图模式的功能?想要启用该功能具体该怎么操作?百度浏览器是一款广受用户欢迎的手机端浏览工具,用户可以在这个平台上使用多个搜索引擎来查找信息。其搜索能力强大,并且支持多种浏览设置,可以根据不同场景进行个性化调整。虽然平台会加载图片内容,但有时候图片会影…

    2026年9月4日
    000
  • 豆包电脑版上线AI播客功能,支持一键生成播客

    据悉,6月17日,豆包电脑版已全面上线ai播客功能。用户只需上传pdf文件或网页链接,即可一键生成双人对话形式的播客节目,语音效果高度拟人化,对话自然流畅。 参与内测的用户反馈称,他们会将一些较长的学习资料发送给豆包,通过一键转换为语音内容,实现随时随地“轻松听长文”。生成的AI播客在音色上与真人非…

    2026年9月4日
    000
  • 《双点博物馆》首次加入促销阵容 “SEGA年中大促”进行中

    《双点博物馆》首次加入促销阵容 “SEGA年中大促”进行中《双点博物馆》首次加入促销阵容 “SEGA年中大促”进行中《双点博物馆》首次加入促销阵容 “SEGA年中大促”进行中《双点博物馆》首次加入促销阵容 “SEGA年中大促”进行中

    “sega年中大促”活动正式启动,playstationstore和nintendo eshop的部分在售游戏推出限时折扣。本次活动将持续至2025年7月2日。 “双点”系列的最新作品——博物馆经营模拟游戏《双点博物馆:探索者版》以8折优惠首次亮相促销活动。此外,《人中之龙8外传 Pirates i…

    2026年9月4日 用户投稿
    000
  • 2024年中国各大城市新能源汽车销量排行榜 深圳第三

      近日,中汽数研发布了2024年中国各大城市新能源汽车销量排行榜(篇幅有限,仅展示top50),数据显示,中国新能源汽车市场持续蓬勃发展,各大城市销量大都有所增长。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜   四川省成都市以3097…

    2026年9月4日
    000
  • LLM自主发现发表在Nature上的科学假设?ICLR 2025 论文MOOSE-Chem深度解析

    LLM自主发现发表在Nature上的科学假设?ICLR 2025 论文MOOSE-Chem深度解析LLM自主发现发表在Nature上的科学假设?ICLR 2025 论文MOOSE-Chem深度解析LLM自主发现发表在Nature上的科学假设?ICLR 2025 论文MOOSE-Chem深度解析LLM自主发现发表在Nature上的科学假设?ICLR 2025 论文MOOSE-Chem深度解析

    人工智能的下一个前沿:引领科学发现 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 编辑 | ScienceAI 人工智能(AI)在自然语言处理和计算机视觉领域的成功有目共睹,但它能否推动科学理论的突破性发现? ICLR 2025 接收论文《…

    2026年9月4日 用户投稿
    100
  • 腾讯混元3D 2.1全链路开源,3D材质生成迈入“工业级”新阶段

    腾讯混元3D 2.1全链路开源,3D材质生成迈入“工业级”新阶段腾讯混元3D 2.1全链路开源,3D材质生成迈入“工业级”新阶段腾讯混元3D 2.1全链路开源,3D材质生成迈入“工业级”新阶段腾讯混元3D 2.1全链路开源,3D材质生成迈入“工业级”新阶段

    腾讯首次将开源发布会带入国际顶尖学术会议现场。 北京时间6月14日,在计算机视觉领域顶级会议CVPR 2025上,腾讯宣布混元3D 2.1大模型正式对外开源。这是首个实现全链路开源的工业级3D生成大模型,其性能已达到闭源模型水平。 相比社区广泛使用的混元3D 2.0版本,2.1版本在几何生成质量方面…

    2026年9月4日 用户投稿
    000
  • 搜狗浏览器怎么关闭拦截弹出窗口工具 把弹出窗口拦截关掉方法

    搜狗浏览器怎么关闭拦截弹出窗口工具 把弹出窗口拦截关掉方法搜狗浏览器怎么关闭拦截弹出窗口工具 把弹出窗口拦截关掉方法搜狗浏览器怎么关闭拦截弹出窗口工具 把弹出窗口拦截关掉方法搜狗浏览器怎么关闭拦截弹出窗口工具 把弹出窗口拦截关掉方法

    我们先启动搜狗浏览器。 然后点击浏览器右上角的三横线按钮,在弹出的菜单中选择【选项】。 进入后选择【*】 步 进入【*】后会看到弹窗拦截功能已经启用,只需取消勾选即可关闭此功能。无需重新启动浏览器! 另外,你也可以将需要允许弹窗的网站添加到【弹出窗口免过滤列表】中,同样可以达到效果。 以上就是搜狗浏…

    2026年9月4日 用户投稿
    100
  • 《无法成眠的伊达键 – From AI:梦境档案》 连续五周发布短篇动画《伊达键的放轻松小剧场》

    《无法成眠的伊达键 – From AI:梦境档案》   连续五周发布短篇动画《伊达键的放轻松小剧场》《无法成眠的伊达键 – From AI:梦境档案》   连续五周发布短篇动画《伊达键的放轻松小剧场》《无法成眠的伊达键 – From AI:梦境档案》   连续五周发布短篇动画《伊达键的放轻松小剧场》《无法成眠的伊达键 – From AI:梦境档案》   连续五周发布短篇动画《伊达键的放轻松小剧场》

    spike chunsoft co., ltd. 宣布将于2025年7月25日在nintendo switch 2 / nintendo switch 及steam平台推出冒险游戏《无法成眠的伊达键 – from ai:梦境档案》。与此同时,即日起将连续五周推出由q版游戏角色主演的短篇动…

    2026年9月4日 用户投稿
    100
  • uc浏览器为什么没有浏览记录了 uc浏览器没有浏览记录的原因

    uc浏览器若没有历史浏览记录,可能是启用了无痕浏览模式(隐私模式),请按照以下步骤关闭: 1、打开UC手机客户端; 2、点击图中所圈区域; 3、点击无痕模式开关,进入无痕模式; 4、再次点击无痕模式按钮,即可退出无痕模式。 以上就是uc浏览器为什么没有浏览记录了 uc浏览器没有浏览记录的原因的详细内…

    2026年9月4日
    100
  • 手机qq浏览器如何编辑word文档 怎么用手机QQ浏览器编辑word文档

    手机qq浏览器如何编辑word文档 怎么用手机QQ浏览器编辑word文档手机qq浏览器如何编辑word文档 怎么用手机QQ浏览器编辑word文档手机qq浏览器如何编辑word文档 怎么用手机QQ浏览器编辑word文档手机qq浏览器如何编辑word文档 怎么用手机QQ浏览器编辑word文档

    qq浏览器,通常也被称为腾讯浏览器、手机qq浏览器或qq手机浏览器。全新上线的ai助手功能,能够帮助你提炼内容要点、选词解读、ai问答、随手摘录,同时还支持边看边聊和跨设备同步。搜索“qq浏览器ai助手”,开启全新的阅读体验。 如何使用手机QQ浏览器编辑Word文档? 打开【QQ浏览器】应用。 进入…

    2026年9月4日 用户投稿
    100
  • PHP:将扁平数组转换为树状结构

    本文介绍了如何使用 PHP 将一个包含父子关系的扁平数组转换为树状结构。通过递归函数 buildTree,我们可以根据 parent_id 将数组元素组织成具有层级关系的树形结构,方便数据展示和操作。本文提供了详细的代码示例和解释,帮助你理解和应用这种数据转换方法。 在实际开发中,我们经常会遇到需要…

    2026年9月4日
    100
  • MySQL索引选择性与性能关系_MySQL高效查询索引设计

    MySQL索引选择性与性能关系_MySQL高效查询索引设计MySQL索引选择性与性能关系_MySQL高效查询索引设计MySQL索引选择性与性能关系_MySQL高效查询索引设计MySQL索引选择性与性能关系_MySQL高效查询索引设计

    mysql索引选择性是索引列中不同值与总行数的比值,决定了索引的查询效率。1. 高选择性列(如用户id、邮箱)应优先建立索引,能快速缩小数据范围;2. 合理使用联合索引,遵循最左前缀原则,提升查询效率;3. 利用覆盖索引避免回表查询,提高性能;4. 避免对低选择性列(如性别、状态)单独建索引;5. …

    2026年9月4日 用户投稿
    100

发表回复

登录后才能评论
关注微信