0

0

CSS框架Milligram实战_极简主义下的前端开发快速原型

P粉602998670

P粉602998670

发布时间:2026-02-25 01:23:11

|

973人浏览过

|

来源于php中文网

原创

milligram 的 reset.css 重置表单元素样式导致“消失”,需显式添加 .input 等类;栅格需严格遵循 .row/.column 结构;主题变量不全量生效,按钮默认色需手动覆盖;搭配 tailwind 易造成冗余。

css框架milligram实战_极简主义下的前端开发快速原型

Milligram 的 reset.css 为什么会让表单控件“消失”

Milligram 默认启用 normalize + 自定义 reset,会重置 inputselecttextareaborderbackgroundpadding,导致在 Chrome/Firefox 下看起来像“没渲染出来”。这不是 bug,是极简设计的主动取舍。

实操建议:

  • 检查是否漏加 class="input" — Milligram 不自动样式化原生表单元素,必须显式添加类名才能获得基础边框和尺寸
  • 若用 input[type="checkbox"]input[type="radio"],需额外加 class="checkbox"class="radio",否则完全不可见
  • 避免直接覆盖 input { border: 1px solid #ccc; },优先用 Milligram 提供的 .input + .input-sm / .input-lg 组合来调节尺寸

Grid 布局里 column 类名不生效的三个常见原因

Milligram 的栅格系统依赖 .row 包裹 .column,且不支持嵌套 .row。一旦结构错位,CSS 选择器就失效。

常见错误现象:

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

  • <div class="column"> 直接写在 <code> 下,没父级 .row —— 宽度保持 100%,无响应行为
  • .column 内又写了 <div class="row"> —— Milligram 的 <code>.row 有负 margin,嵌套会导致左右溢出
  • 混用其他框架(如 Bootstrap)的 col-* 类,同时加载两套栅格 CSS,造成样式冲突
  • 正确写法示例:

    熊猫论文
    熊猫论文

    AI学术写作优化工具,提供AI降重、查重检测、论文润色等服务。

    下载
    <div class="row">
      <div class="column column-60"></div>
      <div class="column column-40"></div>
    </div>

    自定义主题时为什么 primary 颜色改了但按钮没变

    Milligram 的颜色变量(如 $primary)只影响部分组件:导航栏、链接、.button.-primary 的背景,但不控制 .button 默认态、.alert.badge。它不是全量主题系统。

    使用场景限制明显:

    • .button 默认是灰色($grey),想让它随 $primary 变,得手动重写 .button:not(.-primary) { background: $primary; }
    • 所有带 .-outline.-success 等后缀的按钮,颜色值都是硬编码在源码里,不响应变量变更
    • 编译时若用 Sass,必须确保 @import 顺序:先 variables.scss,再 base.scss,最后 components.scss,否则变量不会透传

    Milligram 在现代项目中要不要搭配 PostCSS 或 Tailwind

    可以搭,但要警惕“功能重叠陷阱”。Milligram 已内置 normalize、grid、typography、form、button 等模块,再引入 Tailwind 就等于维护两套原子类体系。

    性能与兼容性影响:

    • Milligram 本身仅 4KB(gzip),加 PostCSS 主要为 autoprefixer 支持 IE11,但若项目已放弃 IE,这步可跳过
    • 若只是想补足响应式断点(如 sm:hidden),不如直接扩写 Milligram 的 @media 规则,避免多一层抽象
    • 真需要 utility-first,建议换用纯工具类方案(如 Picnic CSS 或自建 mini-utility.css),而非叠加 Milligram + Tailwind

    真正容易被忽略的是:Milligram 的 small 标签、blockquote 引用样式、pre 代码块排版都带语义化默认值,删掉它们再靠 utility 类重建,反而更费劲。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
chrome什么意思
chrome什么意思

chrome是浏览器的意思,由Google开发的网络浏览器,它在2008年首次发布,并迅速成为全球最受欢迎的浏览器之一。本专题为大家提供chrome相关的文章、下载、课程内容,供大家免费下载体验。

984

2023.08.11

chrome无法加载插件怎么办
chrome无法加载插件怎么办

chrome无法加载插件可以通过检查插件是否已正确安装、禁用和启用插件、清除插件缓存、更新浏览器和插件、检查网络连接和尝试在隐身模式下加载插件方法解决。更多关于chrome相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

803

2023.11.06

Sass和less的区别
Sass和less的区别

Sass和less的区别有语法差异、变量和混合器的定义方式、导入方式、运算符的支持、扩展性等。本专题为大家提供Sass和less相关的文章、下载、课程内容,供大家免费下载体验。

212

2023.10.12

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

687

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

22

2025.12.06

alert怎么实现换行
alert怎么实现换行

alert通过使用br标签来实现换行。更多关于alert相关的问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

501

2023.11.07

margin在css中是啥意思
margin在css中是啥意思

在CSS中,margin是一个用于设置元素外边距的属性。想了解更多margin的相关内容,可以阅读本专题下面的文章。

456

2023.12.18

css中的padding属性作用
css中的padding属性作用

在CSS中,padding属性用于设置元素的内边距。想了解更多padding的相关内容,可以阅读本专题下面的文章。

157

2023.12.07

Golang 生态工具与框架:扩展开发能力
Golang 生态工具与框架:扩展开发能力

《Golang 生态工具与框架》系统梳理 Go 语言在实际工程中的主流工具链与框架选型思路,涵盖 Web 框架、RPC 通信、依赖管理、测试工具、代码生成与项目结构设计等内容。通过真实项目场景解析不同工具的适用边界与组合方式,帮助开发者构建高效、可维护的 Go 工程体系,并提升团队协作与交付效率。

1

2026.02.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

相关下载

更多

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.9万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.4万人学习

CSS教程
CSS教程

共754课时 | 35.9万人学习

最新文章

更多
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号