@c8y/style
Version:
Styles for Cumulocity IoT applications
190 lines (148 loc) • 3.07 kB
text/less
@import "../mixins/_size.less";
/**
* Margin and Padding Utility Classes
*
* Note: This file uses the size.createSizeClasses() mixin to generate utility classes
* based on the 8px base unit system. The mixin generates classes like .m-t-8, .p-b-16, etc.
*
* Intentionally hardcoded values:
* - Generated by mixin: The mixin generates hardcoded px values (e.g., 8px, 16px, 24px)
* following the base unit system but not using @size-* tokens directly
* - Responsive breakpoints: Use @screen-* tokens for media queries
* - Auto values: CSS auto keyword, not numeric
*
* Note: Consider refactoring the mixin to use @size-* tokens instead of generating
* hardcoded pixel values for better consistency with the design token system.
*/
// Margin utility classes
.createSizeClasses(1, margin, m, 4);
.createSizeClasses(15, margin, m, 8);
/* example result:
.m-t-8{
margin-top: 8px
}
*/
// Padding utility classes
.createSizeClasses(1, padding, p, 4);
.createSizeClasses(15, padding, p, 8);
/* example result:
.p-t-8{
padding-top: 8px
}
*/
// Auto margins
.m-auto {
margin: auto ;
}
.m-t-auto {
margin-top: auto ;
}
.m-r-auto {
margin-right: auto ;
}
.m-b-auto {
margin-bottom: auto ;
}
.m-l-auto {
margin-left: auto ;
}
// Auto width and height
.w-auto {
width: auto ;
}
.h-auto {
height: auto ;
}
//Media queries
@media (max-width: @screen-xs-max) {
.m-auto-xs {
margin: auto ;
}
.m-t-auto-xs {
margin-top: auto ;
}
.m-r-auto-xs {
margin-right: auto ;
}
.m-b-auto-xs {
margin-bottom: auto ;
}
.m-l-auto-xs {
margin-left: auto ;
}
.w-auto-xs {
width: auto ;
}
.h-auto-xs {
height: auto ;
}
}
@media (min-width: @screen-sm-min) {
.m-auto-sm {
margin: auto ;
}
.m-t-auto-sm {
margin-top: auto ;
}
.m-r-auto-sm {
margin-right: auto ;
}
.m-b-auto-sm {
margin-bottom: auto ;
}
.m-l-auto-sm {
margin-left: auto ;
}
.w-auto-sm {
width: auto ;
}
.h-auto-sm {
height: auto ;
}
}
@media (min-width: @screen-md-min) {
.m-auto-md {
margin: auto ;
}
.m-t-auto-md {
margin-top: auto ;
}
.m-r-auto-md {
margin-right: auto ;
}
.m-b-auto-md {
margin-bottom: auto ;
}
.m-l-auto-md {
margin-left: auto ;
}
.w-auto-md {
width: auto ;
}
.h-auto-md {
height: auto ;
}
}
@media (min-width: @screen-lg-min) {
.m-auto-lg {
margin: auto ;
}
.m-t-auto-lg {
margin-top: auto ;
}
.m-r-auto-lg {
margin-right: auto ;
}
.m-b-auto-lg {
margin-bottom: auto ;
}
.m-l-auto-lg {
margin-left: auto ;
}
.w-auto-lg {
width: auto ;
}
.h-auto-lg {
height: auto ;
}
}