gpt4 book ai didi

html - CSS 响应 1080p 及以上

转载 作者:行者123 更新时间:2023-12-03 20:49:37 24 4
gpt4 key购买 nike

最近我正在考虑创建一个响应式网站,该网站在高分辨率屏幕(如 2k 和 4k 屏幕)上显示效果非常好,我还将使其在桌面和较小的设备上响应。
问题:
因为不同的屏幕尺寸会有不同的字体大小、内边距和边距 所以会有很多类似的媒体查询代码,我认为重复类似的媒体查询代码不是一个好主意,那么还有其他好的方法吗?
重复相似代码的示例:

@media only screen and (min-width: 900px) {
.title{
font-size: 1rem;
margin-bottom: 0.2rem;
}
}

@media only screen and (min-width: 1200px) {
.title{
font-size: 1.5rem;
}
}

@media only screen and (min-width: 1920px) {
.title{
font-size: 2rem;
margin-bottom: 0.5rem;
}
}

@media only screen and (min-width: 2560px) {
.title{
font-size: 3rem;
margin-bottom: 1rem;
}
}

@media only screen and (min-width: 3840px) {
.title{
font-size: 3.5rem;
margin-bottom: 1.2rem;
}
}
以上方法是唯一的方法还是我可以使用任何其他方法所以我不需要更改 字体大小、内边距和边距 在每个不同的屏幕尺寸上。

最佳答案

经过一番尝试,我创建了一个 sass mixin 来帮助自己进行响应式设计,我不确定这是否 100% 好用,但我认为它可能会有所帮助。
代码:

@function size-number($base-size, $new-size) {
@if $new-size != 0 {
@return $new-size;
} @else {
@return $base-size;
}
}

@mixin break-points-resize ($properties) {
$PROPERTIES: $properties;
$BREAKPOINTS: ("1920px","2560px","3840px",);

@for $i from 1 through length($BREAKPOINTS) {
@media only screen and (min-width: nth($BREAKPOINTS, $i)) {
@each $PROPERTY-KEY, $PROPERTY-VALUE in $PROPERTIES {
$SIZE-NUMBERS: map-get($PROPERTY-VALUE, "size" );
// [1920px default size => 2], [2560px default size => 3], [3840px default size => 4]
$BASE-SIZES: (size-number(2,nth($SIZE-NUMBERS, 1)),size-number(3,nth($SIZE-NUMBERS, 2)),size-number(4,nth($SIZE-NUMBERS, 3)));
$INDIV-PROPERTY-KEY: $PROPERTY-KEY;
$VALUE-NUMBERS: map-get($PROPERTY-VALUE, "value" );
#{$INDIV-PROPERTY-KEY}: $VALUE-NUMBERS * nth($BASE-SIZES, $i);
}
}
}
}


h1{

// Specify size, it will use the size that is specified (Three breakpoints, three size)
@include break-points-resize(("font-size":("value": 2rem,"size": (2,3,3.5))));

// Specify 0, it will use the default size (Three breakpoints, three size)
@include break-points-resize(("font-size":("value": 2rem,"size": (0,0,0))));
}
抱歉代码有点乱

关于html - CSS 响应 1080p 及以上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63549018/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com