bullframe.css 4.2.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/.browserslistrc +2 -3
  2. package/.editorconfig +15 -0
  3. package/.gitattributes +1 -0
  4. package/.htmlhintrc +12 -0
  5. package/.prettierignore +1 -0
  6. package/.stylelintignore +3 -0
  7. package/.stylelintrc.json +21 -5
  8. package/CHANGELOG.md +289 -301
  9. package/README.md +371 -327
  10. package/dist/css/bullframe-classless-dark-prefers.css +378 -267
  11. package/dist/css/bullframe-classless-dark-prefers.css.map +1 -0
  12. package/dist/css/bullframe-classless-dark-prefers.min.css +2 -3
  13. package/dist/css/bullframe-classless-dark-prefers.min.css.map +1 -1
  14. package/dist/css/bullframe-classless-dark.css +384 -251
  15. package/dist/css/bullframe-classless-dark.css.map +1 -0
  16. package/dist/css/bullframe-classless-dark.min.css +2 -3
  17. package/dist/css/bullframe-classless-dark.min.css.map +1 -1
  18. package/dist/css/bullframe-classless-system-default.css +378 -267
  19. package/dist/css/bullframe-classless-system-default.css.map +1 -0
  20. package/dist/css/bullframe-classless-system-default.min.css +2 -3
  21. package/dist/css/bullframe-classless-system-default.min.css.map +1 -1
  22. package/dist/css/bullframe-classless.css +343 -227
  23. package/dist/css/bullframe-classless.css.map +1 -0
  24. package/dist/css/bullframe-classless.min.css +2 -2
  25. package/dist/css/bullframe-classless.min.css.map +1 -1
  26. package/dist/css/bullframe-dark-prefers.css +399 -462
  27. package/dist/css/bullframe-dark-prefers.css.map +1 -0
  28. package/dist/css/bullframe-dark-prefers.min.css +2 -2
  29. package/dist/css/bullframe-dark-prefers.min.css.map +1 -1
  30. package/dist/css/bullframe-dark.css +401 -373
  31. package/dist/css/bullframe-dark.css.map +1 -0
  32. package/dist/css/bullframe-dark.min.css +2 -2
  33. package/dist/css/bullframe-dark.min.css.map +1 -1
  34. package/dist/css/bullframe-system-default.css +396 -389
  35. package/dist/css/bullframe-system-default.css.map +1 -0
  36. package/dist/css/bullframe-system-default.min.css +2 -2
  37. package/dist/css/bullframe-system-default.min.css.map +1 -1
  38. package/dist/css/bullframe-utilities.css +69 -109
  39. package/dist/css/bullframe-utilities.css.map +1 -0
  40. package/dist/css/bullframe-utilities.min.css +1 -1
  41. package/dist/css/bullframe-utilities.min.css.map +1 -1
  42. package/dist/css/bullframe.css +370 -348
  43. package/dist/css/bullframe.css.map +1 -0
  44. package/dist/css/bullframe.min.css +2 -1
  45. package/dist/css/bullframe.min.css.map +1 -1
  46. package/dist/docs/demo/css/style.css +131 -0
  47. package/{docs/test-page → dist/docs/demo}/index.html +166 -358
  48. package/dist/docs/github-readme/bf-logo-full-dark.png +0 -0
  49. package/package.json +26 -30
  50. package/prettier.config.js +26 -0
  51. package/src/docs/demo/css/style.css +131 -0
  52. package/src/docs/demo/icons/android-chrome-192x192.png +0 -0
  53. package/src/docs/demo/icons/android-chrome-384x384.png +0 -0
  54. package/src/docs/demo/icons/apple-touch-icon.png +0 -0
  55. package/src/docs/demo/icons/favicon-16x16.png +0 -0
  56. package/src/docs/demo/icons/favicon-32x32.png +0 -0
  57. package/src/docs/demo/icons/favicon.ico +0 -0
  58. package/src/docs/demo/icons/mstile-150x150.png +0 -0
  59. package/src/docs/demo/icons/safari-pinned-tab.svg +28 -0
  60. package/src/docs/demo/images/logo.png +0 -0
  61. package/src/docs/demo/images/placeholder-img-130x140.jpg +0 -0
  62. package/src/docs/demo/images/placeholder-img-16x16.jpg +0 -0
  63. package/src/docs/demo/images/placeholder-img-800x400.jpg +0 -0
  64. package/src/docs/demo/images/video-poster.png +0 -0
  65. package/src/docs/demo/index.html +1152 -0
  66. package/src/docs/github-readme/bf-logo-full-dark.png +0 -0
  67. package/src/docs/github-readme/bf-logo-full-light.png +0 -0
  68. package/src/scss/bullframe-classless-dark-prefers.scss +2 -5
  69. package/src/scss/bullframe-classless-dark.scss +2 -5
  70. package/src/scss/bullframe-classless-system-default.scss +2 -5
  71. package/src/scss/bullframe-classless.scss +49 -43
  72. package/src/scss/bullframe-dark-prefers.scss +2 -4
  73. package/src/scss/bullframe-dark.scss +2 -4
  74. package/src/scss/bullframe-system-default.scss +2 -4
  75. package/src/scss/bullframe-utilities.scss +21 -61
  76. package/src/scss/bullframe.scss +49 -121
  77. package/src/scss/custom/_author-styles.scss +5 -0
  78. package/src/scss/forms/_forms-normalization.scss +68 -58
  79. package/src/scss/forms/_forms-styling-radio-checkbox.scss +64 -66
  80. package/src/scss/forms/_forms-styling-range.scss +88 -74
  81. package/src/scss/forms/_forms-styling-select.scss +18 -16
  82. package/src/scss/forms/_forms-styling.scss +38 -26
  83. package/src/scss/miscellaneous/_misc-accessibility.scss +10 -16
  84. package/src/scss/miscellaneous/_misc-anchors.scss +15 -13
  85. package/src/scss/miscellaneous/_misc-embedded-content.scss +14 -21
  86. package/src/scss/miscellaneous/_misc-focus.scss +0 -21
  87. package/src/scss/miscellaneous/_misc-interactive.scss +48 -0
  88. package/src/scss/miscellaneous/_misc-lists.scss +9 -5
  89. package/src/scss/miscellaneous/_misc-scrolling.scss +5 -0
  90. package/src/scss/miscellaneous/_misc-shame.scss +6 -0
  91. package/src/scss/miscellaneous/_misc-tables.scss +17 -5
  92. package/src/scss/mixins/_mixin-dark-prefers.scss +414 -0
  93. package/src/scss/mixins/_mixin-dark.scss +396 -0
  94. package/src/scss/mixins/_mixin-grid-flex.scss +0 -3
  95. package/src/scss/mixins/_mixin-layout.scss +1 -1
  96. package/src/scss/mixins/_mixin-texts.scss +2 -3
  97. package/src/scss/typography/_typography-blockquotes.scss +10 -5
  98. package/src/scss/typography/_typography-headings.scss +9 -8
  99. package/src/scss/typography/_typography-html-body.scss +17 -14
  100. package/src/scss/typography/_typography-misc.scss +19 -22
  101. package/src/scss/typography/_typography-monospaced-elements.scss +21 -12
  102. package/src/scss/utilities/_utility-buttons.scss +20 -18
  103. package/src/scss/utilities/_utility-debugging.scss +2 -88
  104. package/src/scss/utilities/_utility-embeds.scss +1 -1
  105. package/src/scss/utilities/_utility-filters.scss +0 -3
  106. package/src/scss/utilities/_utility-form-states.scss +30 -21
  107. package/src/scss/utilities/_utility-global-dark-classless.scss +3 -157
  108. package/src/scss/utilities/_utility-global-dark-prefers-classless.scss +3 -3
  109. package/src/scss/utilities/_utility-global-dark-prefers.scss +3 -3
  110. package/src/scss/utilities/_utility-global-dark-scrollbars.scss +11 -6
  111. package/src/scss/utilities/_utility-global-dark.scss +4 -213
  112. package/src/scss/utilities/_utility-global-system-default-classless.scss +3 -3
  113. package/src/scss/utilities/_utility-global-system-default.scss +3 -3
  114. package/src/scss/utilities/_utility-grid-system.scss +51 -115
  115. package/src/scss/utilities/_utility-layout.scss +7 -15
  116. package/src/scss/utilities/_utility-print.scss +5 -5
  117. package/src/scss/utilities/_utility-spacing.scss +42 -40
  118. package/src/scss/utilities/_utility-tables.scss +12 -18
  119. package/src/scss/utilities/_utility-texts.scss +48 -22
  120. package/src/scss/utilities/_utility-z-index.scss +1 -1
  121. package/src/scss/variables/_variables-breakpoints.scss +1 -0
  122. package/src/scss/variables/_variables-colors.scss +8 -5
  123. package/src/scss/variables/_variables-spacing.scss +3 -5
  124. package/src/scss/variables/_variables-texts.scss +5 -9
  125. package/vite.config.js +116 -0
  126. package/.nvmrc +0 -1
  127. package/LICENSE +0 -21
  128. package/gulpfile.js +0 -74
  129. package/netlify.toml +0 -3
  130. package/src/scss/miscellaneous/_misc-author-styles-in-css.scss +0 -76
  131. /package/{docs/test-page/assets → dist/docs/demo}/icons/android-chrome-192x192.png +0 -0
  132. /package/{docs/test-page/assets → dist/docs/demo}/icons/android-chrome-384x384.png +0 -0
  133. /package/{docs/test-page/assets → dist/docs/demo}/icons/apple-touch-icon.png +0 -0
  134. /package/{docs/test-page/assets → dist/docs/demo}/icons/favicon-16x16.png +0 -0
  135. /package/{docs/test-page/assets → dist/docs/demo}/icons/favicon-32x32.png +0 -0
  136. /package/{docs/test-page/assets → dist/docs/demo}/icons/favicon.ico +0 -0
  137. /package/{docs/test-page/assets → dist/docs/demo}/icons/mstile-150x150.png +0 -0
  138. /package/{docs/test-page/assets → dist/docs/demo}/icons/safari-pinned-tab.svg +0 -0
  139. /package/{docs/test-page/assets → dist/docs/demo}/images/logo.png +0 -0
  140. /package/{docs/test-page/assets → dist/docs/demo}/images/placeholder-img-130x140.jpg +0 -0
  141. /package/{docs/test-page/assets → dist/docs/demo}/images/placeholder-img-16x16.jpg +0 -0
  142. /package/{docs/test-page/assets → dist/docs/demo}/images/placeholder-img-800x400.jpg +0 -0
  143. /package/{docs/test-page/assets → dist/docs/demo}/images/video-poster.png +0 -0
  144. /package/{docs/assets/images/branding/logo-full.png → dist/docs/github-readme/bf-logo-full-light.png} +0 -0
package/README.md CHANGED
@@ -1,428 +1,479 @@
1
- # bullframe.css
1
+ # Bullframe CSS v5.x
2
2
 
3
3
  <p>
4
4
  <a href="https://www.npmjs.com/package/bullframe.css">
5
- <img src="https://img.shields.io/npm/v/bullframe.css.svg?style=flat-square" alt="NPM page">
6
- </a>
7
- <a href="https://app.netlify.com/sites/bullframecss/deploys">
8
- <img src="https://api.netlify.com/api/v1/badges/20dc2e1f-4af2-49a1-ae68-941eb189c61a/deploy-status" alt="Netlify Status">
5
+ <img src="https://img.shields.io/npm/v/bullframe.css.svg?style=flat-square" alt="NPM version">
9
6
  </a>
10
7
  <a href="https://github.com/marcop135/bullframe.css/commits">
11
- <img src="https://img.shields.io/github/last-commit/marcop135/bullframe.css?style=flat-square" alt="GitHub last commit">
8
+ <img src="https://img.shields.io/github/last-commit/marcop135/bullframe.css.svg?style=flat-square" alt="Last commit">
12
9
  </a>
13
10
  <a href="https://github.com/marcop135/bullframe.css/blob/master/LICENSE">
14
- <img src="https://img.shields.io/github/license/marcop135/bullframe.css.svg?style=flat-square" alt="MIT license">
11
+ <img src="https://img.shields.io/github/license/marcop135/bullframe.css.svg?style=flat-square" alt="MIT License">
15
12
  </a>
16
13
  </p>
17
14
 
18
- <br>
19
-
20
- ![bullframe.css logo](./docs/assets/images/branding/logo-full.png)
15
+ <picture>
16
+ <source media="(prefers-color-scheme: dark)" srcset="./dist/docs/github-readme/bf-logo-full-dark.png">
17
+ <source media="(prefers-color-scheme: light)" srcset="./dist/docs/github-readme/bf-logo-full-light.png">
18
+ <img alt="Bullframe CSS logo" src="./dist/docs/github-readme/bg-logo-full-light.png">
19
+ </picture>
21
20
 
22
21
  [https://github.com/marcop135/bullframe.css](https://github.com/marcop135/bullframe.css)
23
22
 
24
- bullframe.css is a Sass (SCSS) framework that works in a wide range of desktop and mobile browsers. It's a cross-browser and responsive collection of default HTML UI elements ([atoms](https://bradfrost.com/blog/post/atomic-web-design)) for your Sass project.
23
+ ---
24
+
25
+ ## What is Bullframe CSS?
25
26
 
26
- You could be easily use it for marketing sites, landing pages, mini sites, micro sites, blog posts, e-commerce product listings, help and documentation, and more.
27
+ Bullframe CSS is a lightweight, modern Sass (SCSS) framework designed for fast, responsive, and accessible front-end development.
27
28
 
28
- **Just add bullframe.css in your webpage, write semantic HTML, and you are ready to go!**
29
+ Perfect for landing pages, marketing sites, micro-sites, blogs, docs, product listings, and more.
29
30
 
30
- ## Best features
31
+ **Simply add it, start building, and stay in control.**
31
32
 
32
- - Wide range of desktop and mobile browsers support
33
- - Responsive-ness and style normalization *out-of-the-box*
34
- - Cross-browser form elements by default
35
- - Sass architecture
36
- - CSS BEM
33
+ ---
34
+
35
+ ## Best Features
36
+
37
+ - Desktop and mobile browser support
38
+ - Responsive layout and style normalization _out of the box_
39
+ - Cross-browser form elements
40
+ - JavaScript framework-agnostic
41
+ - Sass-based architecture with BEM methodology
37
42
  - Responsive typography
38
43
  - Dark mode and theming support
39
- - RTL support
40
- - Gulp-friendly
41
- - Classless-friendly
44
+ - RTL (right-to-left) support
45
+ - Vite-friendly
46
+ - Works well with classless setups
42
47
 
43
- ## What's included
48
+ ---
44
49
 
45
- You'll see something like this:
50
+ ## What's Included
46
51
 
47
52
  ```text
48
53
  bullframe.css/
49
- └── dist/
50
- ├── css/
51
- │ ├── bullframe-classless.css
52
- │ ├── bullframe-classless.min.css
53
- │ ├── ...
54
- │ ├── bullframe-dark.css
55
- │ ├── bullframe-dark.min.css
56
- │ ├── ...
57
- │ ├── bullframe-utilities.css
58
- │ ├── bullframe-utilities.min.css
59
- │ ├── ...
60
- │ ├── bullframe.css
61
- │ ├── bullframe.min.css
62
- │ ├── ...
63
- │ ├── bullframe-classless.css.map
64
- │ ├── bullframe.min.css.map
65
- │ ├── ...
66
- └── src/scss/
67
- └── forms/
68
- └── miscellaneous/
69
- └── mixins/
70
- └── typography/
71
- └── utilities/
72
- └── variables/
73
- ...
74
- ├── bullframe-classless.scss
75
- ├── bullframe-system-default.scss
76
- ├── bullframe-dark.scss
77
- ├── bullframe-utilities.scss
78
- ├── bullframe.scss
79
- ...
80
- └── gulpfile.js
81
- └── index.html
82
- ...
54
+ ├── dist/
55
+ │ └── css/
56
+ │ ├── bullframe-classless.css
57
+ │ ├── bullframe-classless.min.css
58
+ │ ├── ...
59
+ │ ├── bullframe-dark.css
60
+ │ ├── bullframe-dark.min.css
61
+ │ ├── ...
62
+ │ ├── bullframe-utilities.css
63
+ │ ├── bullframe-utilities.min.css
64
+ │ ├── ...
65
+ │ ├── bullframe.css
66
+ │ ├── bullframe.min.css
67
+ │ ├── ...
68
+ │ ├── bullframe-classless.css.map
69
+ │ ├── bullframe.min.css.map
70
+ │ ├── ...
71
+ ├── src/scss/
72
+ │ ├── forms/
73
+ │ ├── miscellaneous/
74
+ │ ├── mixins/
75
+ │ ├── typography/
76
+ │ ├── utilities/
77
+ │ ├── variables/
78
+ │ ├── bullframe-classless.scss
79
+ │ ├── bullframe-dark.scss
80
+ │ ├── bullframe-utilities.scss
81
+ │ ├── bullframe-system-default.scss
82
+ │ ├── bullframe.scss
83
+ │ └── ...
84
+ ├── vite.config.js
85
+ ├── index.html
86
+ └── ...
83
87
  ```
84
88
 
85
- ## Getting started
86
-
87
- ### Download
89
+ ---
88
90
 
89
- [Download the latest release](https://github.com/marcop135/bullframe.css/archive/master.zip)
91
+ ## Getting Started
90
92
 
91
93
  ### CDN
92
94
 
93
- JSDelivr
95
+ Use JSDelivr CDN to include Bullframe CSS quickly:
94
96
 
95
97
  ```html
96
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@^4.0.0">
98
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@5" />
97
99
  ```
98
100
 
99
- ### npm
101
+ ### HTML Starter Template
102
+
103
+ <details><summary>Open HTML</summary>
104
+
105
+ <!DOCTYPE html>
106
+ <html lang="en">
107
+ <head>
108
+ <meta charset="utf-8">
109
+ <title>Bullframe CSS HTML Starter Template</title>
110
+ <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
111
+
112
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@5/dist/css/bullframe.min.css">
113
+ </head>
114
+ <body>
115
+ <div class="bf-container">
116
+ <!-- Add your site or application content here -->
117
+ <p>Hello world! This is a Bullframe CSS starter template.</p>
118
+ </div>
119
+ </body>
120
+ </html>
121
+
122
+ </details>
123
+
124
+ ### HTML Classless Starter Template
125
+
126
+ > [!NOTE]
127
+ > What does "classless" mean?
128
+ > No utility classes or extra markup needed. Just write semantic HTML and get clean, normalized styles.
129
+
130
+ <details><summary>Open HTML</summary>
131
+
132
+ <!DOCTYPE html>
133
+ <html lang="en">
134
+ <head>
135
+ <meta charset="utf-8">
136
+ <title>Bullframe CSS Classless Starter Template</title>
137
+ <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
138
+
139
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@5/dist/css/bullframe-classless.min.css">
140
+
141
+ <!-- Optional: center page content by default -->
142
+ <style>
143
+ body {
144
+ margin-left: auto;
145
+ margin-right: auto;
146
+ padding: 1.5rem;
147
+ max-width: 80rem;
148
+ }
149
+ </style>
150
+ </head>
151
+ <body>
152
+ <div class="bf-container">
153
+ <!-- Add your site or application content here -->
154
+ <p>Hello world! This is a Bullframe CSS Classless starter template.</p>
155
+ </div>
156
+ </body>
157
+ </html>
158
+
159
+ </details>
160
+
161
+ ---
100
162
 
101
- Once you have installed [Node.js](https://nodejs.org/en/download/), you can run this command to install bullframe.css into your project:
163
+ ### npm
102
164
 
103
- ``` bash
104
- # create a package.json file
105
- # $ npm init
165
+ Make sure you have [Node.js](https://nodejs.org/en/download/) installed. Then run:
106
166
 
167
+ ```bash
168
+ # Install Bullframe CSS
107
169
  npm install bullframe.css
108
170
  ```
109
171
 
110
- [What is Node?](https://en.m.wikipedia.org/wiki/Nodejs)
172
+ ---
111
173
 
112
- [What is npm?](https://www.npmjs.com/get-npm)
174
+ ### Download
113
175
 
114
- ### Gulp.js
176
+ [Download the latest release](https://github.com/marcop135/bullframe.css/archive/master.zip)
115
177
 
116
- After installing bullframe.css from npm, you may use [gulp.js](https://gulpjs.com/docs/en/getting-started/quick-start) to re-compile all files, and customize your Sass project as needed.
178
+ ---
117
179
 
118
- ``` bash
119
- # navigate to /node_modules/bullframe.css
180
+ ## Customization
120
181
 
121
- # install all dependencies
122
- npm install
182
+ ### Theming
123
183
 
124
- # run gulp and have fun!
125
- gulp
126
- ```
184
+ Bullframe provides three builds for theming:
127
185
 
128
- [What is gulp.js?](https://en.m.wikipedia.org/wiki/Gulp.js)
186
+ 1. `bullframe.css` — light theme
187
+ 2. `bullframe-dark.css` — dark theme
188
+ 3. `bullframe-system-default.css` — theme based on user system preference ([`prefers-color-scheme`](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme))
129
189
 
130
- ### HTML
190
+ #### Light Theme CDN (Default)
131
191
 
132
192
  ```html
133
- <!doctype html>
134
- <html lang="en">
135
- <head>
136
- <meta charset="utf-8">
137
- <title>bullframe.css starter template</title>
138
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
139
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@4/dist/css/bullframe.min.css">
140
- </head>
141
- <body>
142
- <div class="bf-container">
143
- <!-- Add your site or application content here -->
144
- <p>Hello world! This is a bullframe.css starter template</p>
145
- </div>
146
- </body>
147
- </html>
193
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@5/dist/css/bullframe.min.css">
148
194
  ```
149
195
 
150
- ## Codepen
151
-
152
- Take a look at this [CodePen collection](https://codepen.io/collection/nxpjRe) and fork a ready-made templates of your choice.
153
-
154
- ### Use bullframe.css as a CodePen template
155
-
156
- Click on the links below, and start a new pen in CodePen using bullframe.css.
157
-
158
- - [Light Theme (default)](https://codepen.io/pen?template=WNrwNNM)
159
- - [Dark Theme](https://codepen.io/pen?template=ExPmzBV)
160
- - [System Default (`prefers-color-scheme`)](https://codepen.io/pen?template=NWxjVQO)
161
-
162
- ## Customization
163
-
164
- ### No classes (class-less)
165
-
166
- What means "classless"?
167
- No classes, no utilities. Feel free to add yours and create your custom components.
168
- Read more on [css-tricks.com](https://css-tricks.com/no-class-css-frameworks/).
169
-
170
- Just drop the snippet below in the `<head>` of your webpage, and the job is done!
171
- Write semantic HTML and get nice styles and cross-browser normalization.
196
+ #### Dark Theme CDN
172
197
 
173
198
  ```html
174
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@4/dist/css/bullframe-classless.min.css">
175
-
176
- <!-- Center the page (optional) -->
177
- <style>
178
- body {
179
- margin-left: auto;
180
- margin-right: auto;
181
- padding: 1.5rem;
182
- max-width: 80rem;
183
- }
184
- </style>
199
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@5/dist/css/bullframe-dark.min.css">
185
200
  ```
186
201
 
187
- ### Theming
188
-
189
- There are three builds available:
190
-
191
- 1. `bullframe.css`: the light theme
192
- 2. `bullframe-dark.css`: the dark theme
193
- 3. `bullframe-system-default.css`: the theme set by the user as default (which can be light or dark). Read more [on MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme).
194
-
195
- #### `bullframe.css`
196
-
197
- CDN
202
+ #### System-default Theme CDN
198
203
 
199
204
  ```html
200
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@4/dist/css/bullframe.min.css">
205
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@5/dist/css/bullframe-system-default.min.css">
201
206
  ```
202
207
 
203
- #### `bullframe-dark.css`
208
+ ### Customise and Rebuild All Styles
204
209
 
205
- CDN
210
+ After installing Bullframe CSS, you can use [Vite.js](https://vite.dev) commands to rebuild the framework as you prefer, adding your custom Sass variables and styles:
206
211
 
207
- ```html
208
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bullframe.css@4/dist/css/">
212
+ ```bash
213
+ # Build production-ready site/app
214
+ npm run build
215
+
216
+ # Preview production build locally
217
+ npm run preview
209
218
  ```
210
219
 
211
- ### Utilities - Reference
220
+ ---
221
+
222
+ ### Utilities
212
223
 
213
- A set of utilities for bullframe.css customisation:
224
+ Bullframe CSS offers a comprehensive set of utility classes for fine-grained control over your layout, spacing, typography, and more. Explore each category below for detailed reference.
214
225
 
215
226
  #### Grid system
216
227
 
217
- Breakpoints: 576, 768, 992 and 1200 pixels.
218
-
219
- | Utility class | Description |
220
- | ------------- | ----------- |
221
- | `.bf-container` | Sets a centered block container with a `max-width` of 1140px, and a custom padding |
222
- | `.bf-container--fluid` | Sets a fluid centered block container with a custom padding |
223
- | `.bf-container--break-xs` | Collapses all the columns when the viewport is 575px and below |
224
- | `.bf-container--break-md` | Collapses all the columns when the viewport is 767px and below |
225
- | `.bf-container--break-lg` | Collapses all the columns when the viewport is 991px and below |
226
- | `.bf-row` | Sets a block container with a custom negative margin |
227
- | `.bf-col-1` | Sets a floated container with a custom padding and a `width` of `8.3333%` |
228
- | `.bf-col-2` | Sets a floated container with a custom padding and a `width` of `16.666666666666664%` |
229
- | `.bf-col-3` | Sets a floated container with a custom padding and a `width` of `25%` |
230
- | `.bf-col-4` | Sets a floated container with a custom padding and a `width` of `33.33333333333333%` |
231
- | `.bf-col-5` | Sets a floated container with a custom padding and a `width` of `41.66666666666667%` |
232
- | `.bf-col-6` | Sets a floated container with a custom padding and a `width` of `50%` |
233
- | `.bf-col-7` | Sets a floated container with a custom padding and a `width` of `58.333333333333336%` |
234
- | `.bf-col-8` | Sets a floated container with a custom padding and a `width` of `66.66666666666666%` |
235
- | `.bf-col-9` | Sets a floated container with a custom padding and a `width` of `75%` |
236
- | `.bf-col-10` | Sets a floated container with a custom padding and a `width` of `83.33333333333334%` |
237
- | `.bf-col-11` | Sets a floated container with a custom padding and a `width` of `91.66666666666666%` |
238
- | `.bf-col-12` | Sets a floated container with a custom padding and a `width` of `100%` |
239
- | `.no-gutters` | Set `margin-left`, `margin-right`, `padding-left` and `padding-right` to `0` — to be applied to row and column containers |
228
+ <details><summary>Open utilities</summary>
229
+
230
+ | Variable | Value |
231
+ | -------------------- | ------ |
232
+ | `$bf-breakpoint-xs` | 0 |
233
+ | `$bf-breakpoint-sm` | 576px |
234
+ | `$bf-breakpoint-md` | 768px |
235
+ | `$bf-breakpoint-lg` | 992px |
236
+ | `$bf-breakpoint-xl` | 1200px |
237
+ | `$bf-breakpoint-xxl` | 1400px |
238
+
239
+ | Utility class | Description |
240
+ | ------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
241
+ | `.bf-container` | Sets a centered block container with a `max-width` of 1140px, and a custom padding |
242
+ | `.bf-container--fluid` | Sets a fluid centered block container with a custom padding |
243
+ | `.bf-container--break-xs` | Collapses all the columns when the viewport is 575px and below |
244
+ | `.bf-container--break-md` | Collapses all the columns when the viewport is 767px and below |
245
+ | `.bf-container--break-lg` | Collapses all the columns when the viewport is 991px and below |
246
+ | `.bf-row` | Sets a block container with a custom negative margin |
247
+ | `.bf-col-1` | Sets a floated container with a custom padding and a `width` of `8.3333%` |
248
+ | `.bf-col-2` | Sets a floated container with a custom padding and a `width` of `16.666666666666664%` |
249
+ | `.bf-col-3` | Sets a floated container with a custom padding and a `width` of `25%` |
250
+ | `.bf-col-4` | Sets a floated container with a custom padding and a `width` of `33.33333333333333%` |
251
+ | `.bf-col-5` | Sets a floated container with a custom padding and a `width` of `41.66666666666667%` |
252
+ | `.bf-col-6` | Sets a floated container with a custom padding and a `width` of `50%` |
253
+ | `.bf-col-7` | Sets a floated container with a custom padding and a `width` of `58.333333333333336%` |
254
+ | `.bf-col-8` | Sets a floated container with a custom padding and a `width` of `66.66666666666666%` |
255
+ | `.bf-col-9` | Sets a floated container with a custom padding and a `width` of `75%` |
256
+ | `.bf-col-10` | Sets a floated container with a custom padding and a `width` of `83.33333333333334%` |
257
+ | `.bf-col-11` | Sets a floated container with a custom padding and a `width` of `91.66666666666666%` |
258
+ | `.bf-col-12` | Sets a floated container with a custom padding and a `width` of `100%` |
259
+ | `.no-gutters` | Set `margin-left`, `margin-right`, `padding-left` and `padding-right` to `0` — to be applied to row and column containers |
260
+
261
+ </details>
240
262
 
241
263
  #### Layout
242
264
 
243
- | Utility class | Description |
244
- | ------------- | ------------- |
245
- | `.bf-clearfix` | Clears the float, [read more](http://nicolasgallagher.com/micro-clearfix-hack/) |
246
- | `.bf-hide` | Sets the `display` to `none` |
247
- | `.bf-hidden` | Sets the `display` to `none` and the `visibility` to `hidden` |
248
- | `.bf-text-hide` | Hides a text (AKA CSS image replacement) using a font `hack` and a combination o properties |
249
- | `.bf-sr-only` | Shows a text only if screen reader |
250
- | `.bf-sr-only.focusable` | Shows a text only if screen reader and focused |
251
- | `.bf-invisible` | Sets the `visibility` to `hidden` |
252
- | `.bf-visible` | Sets the `visibility` to `visible` |
253
- | `.bf-display-block` | Sets the `display` to `block` |
254
- | `.bf-display-block-center` | Sets the `display` to `block`, the left/right margins to `auto` and `text-align` to center |
255
- | `.bf-display-inline` | Sets the `display` to `inline` |
256
- | `.bf-display-inline-block` | Sets the `display` to `inline-block` |
257
- | `.bf-display-flex` | Sets the `display` to `flex` |
258
- | `.bf-display-inline-flex` | Sets the `display` to `inline-flex` |
259
- | `.bf-display-flex--justify-start` | Sets `justify-content` to `flex-start` |
260
- | `.bf-display-flex--justify-end` | Sets `justify-content` to `flex-end` |
261
- | `.bf-display-flex--justify-center` | Sets `justify-content` to `center` |
262
- | `.bf-display-flex--wrap` | Sets `flex-wrap` to `wrap` |
263
- | `.bf-display-flex--nowrap` | Sets `flex-wrap` to `nowrap` |
264
- | `.bf-float-left` | Sets the `float` to `left` |
265
- | `.bf-float-right` | Sets the `float` to `right` |
266
- | `.bf-position-fixed` | Sets the `position` to `fixed` |
267
- | `.bf-align-center-unknown` | Sets the `position` to `relative` |
268
- | `.bf-align-center-unknown--item` | Centers an element with unknown height and width to a relative positioned parent, IE10+, [read more](https://css-tricks.com/centering-css-complete-guide) |
269
- | `.bf-align-center-flex` | Centers all elements with known height and width to a flexbox container, IE10+, [read more](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Flexible_Box_Layout/Aligning_Items_in_a_Flex_Container) |
270
- | `.bf-width-25` | Sets the `width` to `25%` |
271
- | `.bf-width-33` | Sets the `width` to `33.33333333333333%` |
272
- | `.bf-width-50` | Sets the `width` to `50%` |
273
- | `.bf-width-75` | Sets the `width` to `75%` |
274
- | `.bf-width-100` | Sets the `width` to `100%` |
275
- | `.bf-width-auto` | Sets the `width` to `auto` |
276
- | `.bf-z-index-1` | Set `z-index` to 1 |
277
- | `.bf-z-index-2` | Set `z-index` to 2 |
278
- | `.bf-z-index-3` | Set `z-index` to 3 |
279
- | `.bf-z-index-4` | Set `z-index` to 4 |
280
- | `.bf-z-index-5` | Set `z-index` to 5 |
281
- | `.bf-z-index-6` | Set `z-index` to 6 |
282
- | `.bf-z-index-7` | Set `z-index` to 7 |
283
- | `.bf-z-index-8` | Set `z-index` to 8 |
284
- | `.bf-z-index-9` | Set `z-index` to 9 |
285
- | `.bf-z-index-10` | Set `z-index` to 10 |
286
- | `.bf-z-index-20` | Set `z-index` to 20 |
287
- | `.bf-z-index-30` | Set `z-index` to 30 |
288
- | `.bf-z-index-40` | Set `z-index` to 40 |
289
- | `.bf-z-index-50` | Set `z-index` to 50 |
290
- | `.bf-z-index-60` | Set `z-index` to 60 |
291
- | `.bf-z-index-70` | Set `z-index` to 70 |
292
- | `.bf-z-index-80` | Set `z-index` to 80 |
293
- | `.bf-z-index-90` | Set `z-index` to 90 |
294
- | `.bf-z-index-100` | Set `z-index` to 100 |
295
- | `.bf-z-index-200` | Set `z-index` to 200 |
296
- | `.bf-z-index-300` | Set `z-index` to 300 |
265
+ <details><summary>Open utilities</summary>
266
+
267
+ | Utility class | Description |
268
+ | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
269
+ | `.bf-clearfix` | Clears the float, [read more](http://nicolasgallagher.com/micro-clearfix-hack/) |
270
+ | `.bf-hide` | Sets the `display` to `none` |
271
+ | `.bf-hidden` | Sets the `display` to `none` and the `visibility` to `hidden` |
272
+ | `.bf-text-hide` | Hides a text (AKA CSS image replacement) using a font `hack` and a combination o properties |
273
+ | `.bf-sr-only` | Shows a text only if screen reader |
274
+ | `.bf-sr-only.focusable` | Shows a text only if screen reader and focused |
275
+ | `.bf-invisible` | Sets the `visibility` to `hidden` |
276
+ | `.bf-visible` | Sets the `visibility` to `visible` |
277
+ | `.bf-display-block` | Sets the `display` to `block` |
278
+ | `.bf-display-block-center` | Sets the `display` to `block`, the left/right margins to `auto` and `text-align` to center |
279
+ | `.bf-display-inline` | Sets the `display` to `inline` |
280
+ | `.bf-display-inline-block` | Sets the `display` to `inline-block` |
281
+ | `.bf-display-flex` | Sets the `display` to `flex` |
282
+ | `.bf-display-inline-flex` | Sets the `display` to `inline-flex` |
283
+ | `.bf-display-flex--justify-start` | Sets `justify-content` to `flex-start` |
284
+ | `.bf-display-flex--justify-end` | Sets `justify-content` to `flex-end` |
285
+ | `.bf-display-flex--justify-center` | Sets `justify-content` to `center` |
286
+ | `.bf-display-flex--wrap` | Sets `flex-wrap` to `wrap` |
287
+ | `.bf-display-flex--nowrap` | Sets `flex-wrap` to `nowrap` |
288
+ | `.bf-float-left` | Sets the `float` to `left` |
289
+ | `.bf-float-right` | Sets the `float` to `right` |
290
+ | `.bf-position-fixed` | Sets the `position` to `fixed` |
291
+ | `.bf-align-center-unknown` | Sets the `position` to `relative` |
292
+ | `.bf-align-center-unknown--item` | Centers an element with unknown height and width to a relative positioned parent, IE10+, [read more](https://css-tricks.com/centering-css-complete-guide) |
293
+ | `.bf-align-center-flex` | Centers all elements with known height and width to a flexbox container, IE10+, [read more](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Flexible_Box_Layout/Aligning_Items_in_a_Flex_Container) |
294
+ | `.bf-width-25` | Sets the `width` to `25%` |
295
+ | `.bf-width-33` | Sets the `width` to `33.33333333333333%` |
296
+ | `.bf-width-50` | Sets the `width` to `50%` |
297
+ | `.bf-width-75` | Sets the `width` to `75%` |
298
+ | `.bf-width-100` | Sets the `width` to `100%` |
299
+ | `.bf-width-auto` | Sets the `width` to `auto` |
300
+ | `.bf-z-index-1` | Set `z-index` to 1 |
301
+ | `.bf-z-index-2` | Set `z-index` to 2 |
302
+ | `.bf-z-index-3` | Set `z-index` to 3 |
303
+ | `.bf-z-index-4` | Set `z-index` to 4 |
304
+ | `.bf-z-index-5` | Set `z-index` to 5 |
305
+ | `.bf-z-index-6` | Set `z-index` to 6 |
306
+ | `.bf-z-index-7` | Set `z-index` to 7 |
307
+ | `.bf-z-index-8` | Set `z-index` to 8 |
308
+ | `.bf-z-index-9` | Set `z-index` to 9 |
309
+ | `.bf-z-index-10` | Set `z-index` to 10 |
310
+ | `.bf-z-index-20` | Set `z-index` to 20 |
311
+ | `.bf-z-index-30` | Set `z-index` to 30 |
312
+ | `.bf-z-index-40` | Set `z-index` to 40 |
313
+ | `.bf-z-index-50` | Set `z-index` to 50 |
314
+ | `.bf-z-index-60` | Set `z-index` to 60 |
315
+ | `.bf-z-index-70` | Set `z-index` to 70 |
316
+ | `.bf-z-index-80` | Set `z-index` to 80 |
317
+ | `.bf-z-index-90` | Set `z-index` to 90 |
318
+ | `.bf-z-index-100` | Set `z-index` to 100 |
319
+ | `.bf-z-index-200` | Set `z-index` to 200 |
320
+ | `.bf-z-index-300` | Set `z-index` to 300 |
321
+
322
+ </details>
297
323
 
298
324
  #### Spacing
299
325
 
300
- | Utility class | Description |
301
- | ------------- | ----------- |
302
- | `.bf-m-0` | Sets the `margin` to `0` |
303
- | `.bf-m-t-0` | Sets the `margin-top` to `0` |
304
- | `.bf-m-b-0` | Sets the `margin-bottom` to `0` |
305
- | `.bf-m-l-0` | Sets the `margin-left` to `0` |
306
- | `.bf-m-r-0` | Sets the `margin-right` to `0` |
307
- | `.bf-m-b-1` | Sets the `margin-bottom` to a custom value that matches the grid system gutter |
308
- | `.bf-m-b-2` | Sets the `margin-bottom` to a custom value |
309
- | `.bf-m-b-3` | Sets the `margin-bottom` to a custom value |
310
- | `.bf-m-b-4` | Sets the `margin-bottom` to a custom value |
311
- | `.bf-p-0` | Sets the `padding` to `0` |
312
- | `.bf-p-t-0` | Sets the `padding-top` to `0` |
313
- | `.bf-p-b-0` | Sets the `padding-bottom` to `0` |
314
- | `.bf-p-l-0` | Sets the `padding-left` to `0` |
315
- | `.bf-p-r-0` | Sets the `padding-right` to `0` |
316
- | `.bf-p-t-1` | Sets the `padding-top` to a custom value that matches the grid system gutter |
317
- | `.bf-p-t-2` | Sets the `padding-top` to a custom value |
318
- | `.bf-p-t-3` | Sets the `padding-top` to a custom value |
319
- | `.bf-p-t-4` | Sets the `padding-top` to a custom value |
320
- | `.bf-p-t-1` | Sets the `padding-bottom` to a custom value that matches the grid system gutter |
321
- | `.bf-p-b-2` | Sets the `padding-bottom` to a custom value |
322
- | `.bf-p-b-3` | Sets the `padding-bottom` to a custom value |
323
- | `.bf-p-b-4` | Sets the `padding-bottom` to a custom value |
326
+ <details><summary>Open utilities</summary>
327
+
328
+ | Utility class | Description |
329
+ | ------------- | ----------------------------------------------------------------------------------------- |
330
+ | `.bf-m-0` | Sets the `margin` to `0` |
331
+ | `.bf-m-t-0` | Sets the `margin-top` to `0` |
332
+ | `.bf-m-t-1` | Sets the `margin-top` to a custom medium spacing value (`$bf-spacing-md-rem`) |
333
+ | `.bf-m-t-2` | Sets the `margin-top` to a custom large spacing value (`$bf-spacing-lg-rem`) |
334
+ | `.bf-m-t-3` | Sets the `margin-top` to a custom extra large spacing value (`$bf-spacing-xl-rem`) |
335
+ | `.bf-m-t-4` | Sets the `margin-top` to a custom extra extra large spacing value (`$bf-spacing-xxl-rem`) |
336
+ | `.bf-m-b-0` | Sets the `margin-bottom` to `0` |
337
+ | `.bf-m-b-1` | Sets the `margin-bottom` to a custom value that matches the grid system gutter |
338
+ | `.bf-m-b-2` | Sets the `margin-bottom` to a custom value |
339
+ | `.bf-m-b-3` | Sets the `margin-bottom` to a custom value |
340
+ | `.bf-m-b-4` | Sets the `margin-bottom` to a custom value |
341
+ | `.bf-m-l-0` | Sets the `margin-left` to `0` |
342
+ | `.bf-m-r-0` | Sets the `margin-right` to `0` |
343
+ | `.bf-p-0` | Sets the `padding` to `0` |
344
+ | `.bf-p-t-0` | Sets the `padding-top` to `0` |
345
+ | `.bf-p-b-0` | Sets the `padding-bottom` to `0` |
346
+ | `.bf-p-l-0` | Sets the `padding-left` to `0` |
347
+ | `.bf-p-r-0` | Sets the `padding-right` to `0` |
348
+ | `.bf-p-t-1` | Sets the `padding-top` to a custom value that matches the grid system gutter |
349
+ | `.bf-p-t-2` | Sets the `padding-top` to a custom value |
350
+ | `.bf-p-t-3` | Sets the `padding-top` to a custom value |
351
+ | `.bf-p-t-4` | Sets the `padding-top` to a custom value |
352
+ | `.bf-p-t-1` | Sets the `padding-bottom` to a custom value that matches the grid system gutter |
353
+ | `.bf-p-b-2` | Sets the `padding-bottom` to a custom value |
354
+ | `.bf-p-b-3` | Sets the `padding-bottom` to a custom value |
355
+ | `.bf-p-b-4` | Sets the `padding-bottom` to a custom value |
356
+
357
+ </details>
324
358
 
325
359
  #### Texts
326
360
 
327
- | Utility class | Description |
328
- | ------------- | ----------- |
329
- | `.bf-t-transform-uppercase` | Sets `transform` to a `uppercase` (AKA capitalizes a text) |
330
- | `.bf-t-transform-none` | Sets `transform` to a `none` |
331
- | `.bf-t-left` | Sets `text-align` to a `left` |
332
- | `.bf-t-center` | Sets `text-align` to a `center` |
333
- | `.bf-t-right` | Sets `text-align` to a `right` |
334
- | `.bf-t-shadow` | Sets a basic text shadow |
335
- | `.bf-t-italic` | Sets `font-style` to a `italic` |
336
- | `.bf-t-style-normal` | Sets `font-style` to a `normal` |
337
- | `.bf-t-weight-300` | Sets `font-weight` to `300` (AKA light) |
338
- | `.bf-t-weight-400` | Sets `font-weight` to `400` (AKA normal) |
339
- | `.bf-t-weight-500` | Sets `font-weight` to `500` (AKA medium) |
340
- | `.bf-t-weight-600` | Sets `font-weight` to `600` (AKA semi-bold) |
341
- | `.bf-t-weight-700` | Sets `font-weight` to `700` (AKA bold) |
342
- | `.bf-t-weight-800` | Sets `font-weight` to `800` (AKA black) |
343
- | `.bf-text-break` | Sets `word-wrap` to a `break-word`, applied by default to the `body` |
344
- | `.bf-t-truncate` | Truncates a very long text and replaces the missing text with an ellipsis |
345
- | `.bf-t-truncate--multiline-2` | Truncates a long doubled line text and replaces the missing text with an ellipsis (no IE) |
346
- | `.bf-t-truncate--multiline-3` | Truncates a long tripled line text and replaces the missing text with an ellipsis (no IE) |
347
- | `.bf-no-select` | Blocks user text selection |
348
- | `.bf-font-sans-serif` | Sets `font-family` to a `sans-serif`, and a combination of cross-browser system UI sans-serif font families |
349
- | `.bf-font-serif` | Sets `font-family` to a `serif`, and a combination of cross-browser system UI serif font families |
350
- | `.bf-font-monospace` | Sets `font-family` to a `monospace`, a combination of widely supported monospaced font families |
351
- | `.bf-h1` | Matches the font styling of a `h1` |
352
- | `.bf-h2` | Matches the font styling of a `h2` |
353
- | `.bf-h3` | Matches the font styling of a `h3` |
354
- | `.bf-h4` | Matches the font styling of a `h4` |
355
- | `.bf-h5` | Matches the font styling of a `h5` |
356
- | `.bf-h6` | Matches the font styling of a `h6` |
357
- | `.bf-lead` | Sets `font-size` to `125%` |
358
- | `.bf-responsive-typography` | Scales `font-size` from a minimum of `1.6rem` (AKA 16px) to a maximum of `1.9rem` using `calc` and some `CSS custom properties` |
361
+ <details><summary>Open utilities</summary>
362
+
363
+ | Utility class | Description |
364
+ | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
365
+ | `.bf-t-transform-uppercase` | Sets `transform` to a `uppercase` (AKA capitalizes a text) |
366
+ | `.bf-t-transform-none` | Sets `transform` to a `none` |
367
+ | `.bf-t-left` | Sets `text-align` to a `left` |
368
+ | `.bf-t-center` | Sets `text-align` to a `center` |
369
+ | `.bf-t-right` | Sets `text-align` to a `right` |
370
+ | `.bf-t-shadow` | Sets a basic text shadow |
371
+ | `.bf-t-italic` | Sets `font-style` to a `italic` |
372
+ | `.bf-t-style-normal` | Sets `font-style` to a `normal` |
373
+ | `.bf-t-weight-300` | Sets `font-weight` to `300` (AKA light) |
374
+ | `.bf-t-weight-400` | Sets `font-weight` to `400` (AKA normal) |
375
+ | `.bf-t-weight-500` | Sets `font-weight` to `500` (AKA medium) |
376
+ | `.bf-t-weight-600` | Sets `font-weight` to `600` (AKA semi-bold) |
377
+ | `.bf-t-weight-700` | Sets `font-weight` to `700` (AKA bold) |
378
+ | `.bf-t-weight-800` | Sets `font-weight` to `800` (AKA black) |
379
+ | `.bf-text-break` | Sets `word-wrap` to a `break-word`, applied by default to the `body` |
380
+ | `.bf-t-truncate` | Truncates a very long text and replaces the missing text with an ellipsis |
381
+ | `.bf-t-truncate--multiline-2` | Truncates a long doubled line text and replaces the missing text with an ellipsis (no IE) |
382
+ | `.bf-t-truncate--multiline-3` | Truncates a long tripled line text and replaces the missing text with an ellipsis (no IE) |
383
+ | `.bf-no-select` | Blocks user text selection |
384
+ | `.bf-font-sans-serif` | Sets `font-family` to a `sans-serif`, and a combination of cross-browser system UI sans-serif font families |
385
+ | `.bf-font-serif` | Sets `font-family` to a `serif`, and a combination of cross-browser system UI serif font families |
386
+ | `.bf-font-monospace` | Sets `font-family` to a `monospace`, a combination of widely supported monospaced font families |
387
+ | `.bf-h1` | Matches the font styling of a `h1` |
388
+ | `.bf-h2` | Matches the font styling of a `h2` |
389
+ | `.bf-h3` | Matches the font styling of a `h3` |
390
+ | `.bf-h4` | Matches the font styling of a `h4` |
391
+ | `.bf-h5` | Matches the font styling of a `h5` |
392
+ | `.bf-h6` | Matches the font styling of a `h6` |
393
+ | `.bf-lead` | Sets `font-size` to `125%` |
394
+ | `.bf-responsive-typography` | Scales `font-size` from a minimum of `1.6rem` (AKA 16px) to a maximum of `1.9rem` using `calc` and some `CSS custom properties` |
395
+
396
+ </details>
359
397
 
360
398
  #### Lists
361
399
 
362
- | Utility class | Description |
363
- | ------------- | ----------- |
400
+ <details><summary>Open utilities</summary>
401
+
402
+ | Utility class | Description |
403
+ | ------------------- | -------------------------------------------------------------------------------- |
364
404
  | `.bf-list-unstyled` | Removes margins, paddings and `li` list styles from `ul`, `ol` and `dd` elements |
365
405
 
366
406
  #### Tables
367
407
 
368
- | Utility class | Description |
369
- | ------------- | ----------- |
370
- | `.bf-table` | Sets a border and custom paddings and margins to a table |
371
- | `.bf-table-responsive` | Adds responsiveness to a table container |
372
- | `.bf-table--zebra` | Increases a table readability adding horizontal zebra stripes |
408
+ | Utility class | Description |
409
+ | ----------------------------- | ------------------------------------------------------------------------ |
410
+ | `.bf-table` | Sets a border and custom paddings and margins to a table |
411
+ | `.bf-table-responsive` | Adds responsiveness to a table container |
412
+ | `.bf-table--zebra` | Increases a table readability adding horizontal zebra stripes |
373
413
  | `.bf-table-responsive--zebra` | Increases a responsive table readability adding horizontal zebra stripes |
374
414
 
415
+ </details>
416
+
375
417
  #### Embeds
376
418
 
377
- | Utility class | Description |
378
- | ------------- | ----------- |
379
- | `.bf-embed-responsive` | Adds responsiveness to an `iframe`, `embed`, `object`, `video` or *general purpouse element* (e.g. youtube embed) |
380
- | `.bf-embed-responsive--4-3` | Sets a 4:3 ratio responsiveness to an `iframe`, `embed`, `object`, `video` or *general purpouse element* container (e.g. youtube embed) |
381
- | `.bf-embed-responsive--item` | A *general purpouse element* element that behaves like a `video` |
419
+ <details><summary>Open utilities</summary>
420
+
421
+ | Utility class | Description |
422
+ | ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
423
+ | `.bf-embed-responsive` | Adds responsiveness to an `iframe`, `embed`, `object`, `video` or _general purpouse element_ (e.g. youtube embed) |
424
+ | `.bf-embed-responsive--4-3` | Sets a 4:3 ratio responsiveness to an `iframe`, `embed`, `object`, `video` or _general purpouse element_ container (e.g. youtube embed) |
425
+ | `.bf-embed-responsive--item` | A _general purpouse element_ element that behaves like a `video` |
426
+
427
+ </details>
382
428
 
383
429
  #### Buttons
384
430
 
385
- | Utility class | Description |
386
- | ------------- | ----------- |
387
- | `.bf-btn` | Creates a standard gray-looking button (e.g. `<a class="bf-btn" href="...">...</a>`)|
388
- | `.bf-btn--primary` | Creates a primary blue-looking button |
431
+ <details><summary>Open utilities</summary>
432
+
433
+ | Utility class | Description |
434
+ | ------------------ | ------------------------------------------------------------------------------------ |
435
+ | `.bf-btn` | Creates a standard gray-looking button (e.g. `<a class="bf-btn" href="...">...</a>`) |
436
+ | `.bf-btn--primary` | Creates a primary blue-looking button |
437
+
438
+ </details>
389
439
 
390
440
  #### Form states
391
441
 
392
- | Utility class | Description |
393
- | ------------- | ----------- |
394
- | `.bf-focused` | Sets a blue-looking focused ring and shadow around an `input`, `textarea` or `select` |
395
- | `.bf-disabled` | Sets `opacity` to `0.5`, and resets a combinations of properties to the default value if is disabled |
396
- | `.bf-invalid` | Sets a red-looking focused ring and shadow around an invalid `input`, `textarea` or `select` |
442
+ <details><summary>Open utilities</summary>
443
+
444
+ | Utility class | Description |
445
+ | -------------- | ---------------------------------------------------------------------------------------------------- |
446
+ | `.bf-focused` | Sets a blue-looking focused ring and shadow around an `input`, `textarea` or `select` |
447
+ | `.bf-disabled` | Sets `opacity` to `0.5`, and resets a combinations of properties to the default value if is disabled |
448
+ | `.bf-invalid` | Sets a red-looking focused ring and shadow around an invalid `input`, `textarea` or `select` |
449
+
450
+ </details>
397
451
 
398
452
  #### Reduced motion
399
453
 
400
- | Utility class | Description |
401
- | ------------- | ----------- |
454
+ <details><summary>Open utilities</summary>
455
+
456
+ | Utility class | Description |
457
+ | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
402
458
  | `.bf-reduced-motion` | Adds a combinations of properties and values to an element (e.g. the `body`) removing all motion-based animations if preferred by the user, [read more](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion) |
403
459
 
460
+ </details>
461
+
462
+ ---
463
+
404
464
  ## Browser compatibility
405
465
 
406
466
  ### Desktop browsers
407
467
 
408
- - Latest stable two: Firefox, Chrome, Edge, Safari, Opera
409
- - IE 11+
468
+ - Latest two stable versions: Firefox, Chrome, Edge, Safari, Opera
410
469
 
411
470
  ### Mobile browsers
412
471
 
413
- - Latest stable: Firefox, Chrome, Edge, Opera, Mobile Safari
414
-
415
- You might take a look at the [.browserslistrc](https://github.com/marcop135/bullframe.css/blob/master/.browserslistrc) file for [Autoprefixer](https://github.com/postcss/autoprefixer)
416
-
417
- ### Screenshots
472
+ - Latest two stable versions: Firefox, Chrome, Edge, Mobile Safari, Opera
418
473
 
419
- How can I quickly determine if every HTML element works well on all browsers?
474
+ You can check the [.browserslistrc](https://github.com/marcop135/bullframe.css/blob/master/.browserslistrc) file.
420
475
 
421
- Take a look at some [screenshots and screencasts](https://github.com/marcop135/bullframe.css/tree/master/docs/screenshots-screencasts), organized by rendering engines (blink, gecko, trident, webkit).
422
-
423
- ## Contributors
424
-
425
- [@englishextra](https://github.com/englishextra) the project is still live thanks to you!
476
+ ---
426
477
 
427
478
  ## Contributing
428
479
 
@@ -432,17 +483,10 @@ Please read the [contribution guidelines](https://github.com/marcop135/bullframe
432
483
 
433
484
  [Changelog](https://github.com/marcop135/bullframe.css/blob/master/CHANGELOG.md)
434
485
 
435
- ## Acknowledgements
436
-
437
- bullframe.css incorporates some of the styles found on some amazing CSS boilerplates and frameworks across the web. *Thank you!*
486
+ ## Author
438
487
 
439
- - @necolas [/normalize.css](https://github.com/necolas/normalize.css) for the extensive old browsers bug fixing documentation
440
- - @h5bp [/main.css](https://github.com/h5bp/main.css) for the excellent print styles base and the keyboard utilities
441
- - @twbs [/bootstrap](https://github.com/twbs/bootstrap) for some neat typography tricks, responsive embeds, reboot styles, base24 SVG icons, button styles, grid system breakpoints and spacing utilities *(a lot!)*
442
- - @kognise [/water.css](https://github.com/kognise/water.css) for the "classless" concept inspiration and some form tricks
443
- - @csswizardry @inuitcss [/inuit.css](https://github.com/inuitcss/inuitcss) for some advanced Sass tips and tricks
444
- - @jensimmons [/cssremedy](https://github.com/jensimmons/cssremedy) for the prefers-reduced-motion snippet
488
+ [Marco Pontili](https://marcopontili.com)
445
489
 
446
490
  ## License
447
491
 
448
- The MIT License (MIT) - [http://opensource.org/licenses/MIT](http://opensource.org/licenses/MIT) "The MIT License"
492
+ This project is licensed under the [MIT License](LICENSE).