Javascript 当我达到某个媒体查询时,如何将4x3网格转换为3x4网格?
我正在尝试制作一个响应性强的网格。网格从4x3开始,当我达到720px时,我希望它是3x4网格。我正在使用Bootstrap3(无法在此项目中使用Bootstrap4)。现在我可以使用javascript来实现这一点,但我希望使用纯html和css来实现这一点 从Javascript 当我达到某个媒体查询时,如何将4x3网格转换为3x4网格?,javascript,jquery,html,css,twitter-bootstrap-3,Javascript,Jquery,Html,Css,Twitter Bootstrap 3,我正在尝试制作一个响应性强的网格。网格从4x3开始,当我达到720px时,我希望它是3x4网格。我正在使用Bootstrap3(无法在此项目中使用Bootstrap4)。现在我可以使用javascript来实现这一点,但我希望使用纯html和css来实现这一点 从 A B C D E F G H I J K L 到@仅介质屏幕和(最小宽度:720px) abc D E F G H I J K L 我意识到您需要在两行之间插入行,这就是我使用javascript动态添加它的原因。当它静态地存在时,
A B C D
E F G H
I J K L
到@仅介质屏幕和(最小宽度:720px)
abc
D E F
G H I
J K L
我意识到您需要在两行之间插入行,这就是我使用javascript动态添加它的原因。当它静态地存在时,我不知道该怎么做
函数gridDivideBy(divideNum){
$('.myClass').contents().unwrap();
变量$square=$(“.square”);
对于(设i=0;i<$square.length;i+=divideNum){
//创建动态div
设$div=$(“”{
类别:“myClass行”
});
//用myClass将所有框包装成一行并div
$square.slice(i,i+divideNum).wrapAll($div);
}
}
函数myFunc(x){
如果(x.matches){
网格分割(4);
}否则{
网格分割(3);
}
}
var x=window.matchMedia(“(最小宽度:720px)”)
myFunc(x);
x、 addListener(myFunc)代码>
.square{
弹性:1;
填充物:5px;
保证金:5px;
边框:2倍实心#eee;
弹性:1;
}
.myClass{
显示器:flex;
填充物:5px;
保证金:4倍;
边框:1px纯绿色;
}
A.
B
C
D
E
F
G
H
我
J
K
L
尝试使用其他选项为什么?
因为bootstrap3使用768px大小作为第一个断点
超小型设备手机(尝试使用其他选项为什么?
因为bootstrap3使用768px大小作为第一个断点
超小型设备电话(如果您熟悉w media查询,那么您应该能够使用网格模板行和网格模板列调整网格
@media screen and (max-width:720px) {
.grid-container {
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr 1fr;
}
}
如果有帮助,请告诉我。谢谢您,祝您好运。如果您熟悉w media查询,那么您应该能够使用网格模板行和网格模板列调整网格
@media screen and (max-width:720px) {
.grid-container {
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr 1fr;
}
}
让我知道它是否有用。谢谢你,祝你好运。你是否尝试过将classcol-sm-4
与col-md-3
一起添加?这给了我3x4、2x6和1x12,但不是我想要开始的4x3,但谢谢,我不太擅长网格。你可以在容器上使用display:flex,然后在.sq上使用25%的宽度uare,然后是一个媒体查询,询问您是否尝试添加classcol-sm-4
以及col-md-3
?这给了我3x4、2x6和1x12,但不是我想要的4x3,但谢谢,我只是不擅长网格。您可以在容器上使用display:flex,然后在.square上使用25%的宽度,然后使用medi询问