内容简介:A CSS framework without all the fluff.Blunt doesn't have any opinions on how your applications should look. It only provides helper classes to make positioning and responsive design easier.There seem to be hundreds of these things out there. So why bother
Blunt
A CSS framework without all the fluff.
Blunt doesn't have any opinions on how your applications should look. It only provides helper classes to make positioning and responsive design easier.
Why another CSS framework...?
There seem to be hundreds of these things out there. So why bother with another one? Well, I was sick of fighting with the other options. Most are overly opinionated and result in spending time fighting the framework instead of it boosting productivity. I have tried so many different ones. Some do too much, others do too little. I needed some middle ground that worked for specifically what I wanted. I don't want to write any CSS that does positioning elements. I want to write CSS that only does the styling of my elements (e.g. text color, borders, background colors, etc).
That means that I never want to write display: flex;
or display: grid;
but I have no problem writing color: var(--off-white);
.
I also never want to write another @media
query again. I want all of my positioning code to get done within the HTML itself.
I also dont want something that does more than this. I don't want to have to install an NPM package to get what I need. I just want to include the CSS file and be done with it.
As a result, Blunt does the following:
- Provides a responsive container for 3 different screen sizes (sm, md, lg)
- Provides margin classes
- Provides padding classes
- Provides width classes
- Provides height classes
- Provides font size and line height classes
- Provides grid classes
- Provides a row and column class
- Provides classes to align text and elements
- Never requires me to write CSS for positioning.
It does nothing else.
Getting Started
src/blunt.css <link rel='stylesheet' type='text/css' href='/path/to/blunt.css'>
Example
Let's create a simple responsive card using Blunt.
<div> <div> <div> <div> <img src="https://randomuser.me/api/portraits/women/12.jpg"> </div> <div> <div>Erin May</div> <div>Software Engineer</div> <div>emay@example.com</div> <div>(123) 456-7890</div> </div> </div> </div> </div> <style> html { font-family: sans-serif; } .purple { color: #A010F0; } .rounded { border-radius: 100%; } .card { border: 1px solid #efefef; box-shadow: 3px 3px 3px #efefef; } </style>
Large
Medium
Small
Classes
Blunt supports three screen sizes:
sm md lg
Blunt supports decimal values on some classes using the following syntax {integer}p{fraction}
where fraction
is a number from 1 to 9
As an example, if we want to set the font size on a small screen we can use the class sm-font-1p2
which will sent the font size on small screens to 1.2rem
If we want the font size to be 1.2rem on all screen sizes we can remove the sm
and use the class font-1p2
. Screen size specific classes override the global values for their respective screen sizes. Whole numbers do not use the {number}p{fraction}
syntax. For a font size of 1rem
the following class is used: font-1
.
All Blunt classes
container
- Responsive container class
{size}-grid
- Sets display of element to grid
{size}-grid-h-center
- Center aligns grid items horizontally
{size}-grid-v-center
- Center aligns grid items vertically
{size}-grid-h-end
- Aligns grid items to their horizontal end
{size}-grid-v-end
- Aligns grid items to their vertical end
{size}-grid-{1-10}
- Defines number of columns in grid (between 1 and 10 columns)
{size}-gap-{0-4}p{1-9}
- Defines the grid gap between 0.1 and 4 rem
{size}-auto-center
- Does margin-left: auto; margin-right: auto;
{size}-text-{left, right, center}
- Aligns text in one of three locations: left, right, or center
{size}-m{t,l,r,b}-{0-15}p{0-9}
- Margin class sm-mt-3p3
will resolve to margin-top: 3.3vh
for the small screen size
{size}-p{t,l,r,b}-{0-15}p{0-9}
- Padding class md-ml-3p3
will resolve to padding-left: 3.3vw
for the medium screen size
{size}-lh-{0-4}p{0-9}
- Line height class lg-lh-1p3
will resolve to line-height: 1.3rem
for the large screen
{size}-font-{0-4}p{0-9}
- Font size class font-2
will resolve to font-size: 2rem;
for all screen sizes
{size}-w-{0-100}
- Width class sm-w-80
will resolve to width: 100%;
on small screens.
{size}-vw-{0-100}
- Width class sm-vw-80
will resolve to width: 100vw;
on small screens.
{size}-h-{0-100}
- Height class md-h-100
will resolve to height:100%;
on medium screens.
{size}-vh-{0-100}
- Height class md-vh-100
will resolve to height:100vh;
on medium screens.
{size}-row
- sm-row
will resolve to width: 100%; display: flex; flex-direction: row;
for small screens
{size}-col
- lg-col
will resolve to width: 100%; display: flex; flex-direction: column;
for large screens
{size}-{v, h}-{center, end, space-around, space-between}
- lg-h-center
will center the row items horizontally on large screens
{size}-text-{center, left, right}
- text-center
will center text
{size}-hidden
- lg-hidden
will hide an element on large screens
{size}-px{w,h}-{0-1000}
- lg-pxw-300
will resolve to width: 300px
on large screens md-pxh-200
will resolve to height: 200px
on medium screens.
{size}-{absolute, static, sticky, fixed}
- lg-fixed
will resolve to position: fixed;
for large screens
{size}-{top, left, right, bottom}-{1-100}
- md-top-5
will resolve to top:5vh;
for medium screens
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
突破——程序员如何练就领导力
刘朋 / 电子工业出版社 / 2018-8-31 / 55.00元
内容简介: 在今日中国如雨后春笋般出现的各种新兴的互联网和软件公司中,有越来越多的技术达人凭借在技术上的优异表现而被晋升为技术团队的管理者和领导者。然而,从技术到管理——从单枪匹马的个人贡献者到一呼百应的技术团队领导者——注定是“惊险的一跃”。对于刚走上技术团队管理岗位的技术专家,你一定遇到过和本书作者当年一样的各种困惑和不适“症状”: ——我能处理好人“机”关系,但是如何处理好人际关......一起来看看 《突破——程序员如何练就领导力》 这本书的介绍吧!
JSON 在线解析
在线 JSON 格式化工具
RGB转16进制工具
RGB HEX 互转工具