官术网_书友最值得收藏!

Using flex and media queries for horizontal layout

To achieve the first goal, we can apply the following properties to the list container:

.related-items {
display:flex;
flex-wrap: wrap;
list-style: none;
}

This nearly gets us there. However, it's a little messy: there is no consistency in item width, and depending on the screen width, the list will end up being both horizontal and vertical (as shown in the following image), when we wanted it to be either horizontal or vertical:

Related content thumbnails with a flexible container: incorrect alignment

We can fix this with a media query. Let's say we have four items. When displayed horizontally, we'll want each to take up 25 percent of the available space. We'll use a width of 50rem as our breakpoint:

@media (min-width:50rem) {
figure {
margin:40px;
}

.related-thumb {
flex-basis:25%;
flex-wrap:wrap;
}

.related-thumb amp-img, .related-thumb figcaption{
flex-basis:100%
}

.related-items li {
width:25%;
}
}
Horizontal thumbnail layout on larger screen (tablet device in landscape orientation)

This will give us a 4x1 horizontal list of items on wider screens and a 1x4 vertical list on small screens.

We can push this even further. On mid-sized screens, let's go for a 2x2 grid. To achieve this, we'll add another media query that matches screens between our default and our large screen media queries (full code at /ch3/related-flex-media.html):

    @media (min-width:35rem) and (max-width:50rem) {
...
.related-items li {
width:50%;
}
}
主站蜘蛛池模板: 宝山区| 漯河市| 县级市| 清苑县| 伊金霍洛旗| 天全县| 金平| 读书| 大连市| 郯城县| 赤峰市| 新竹市| 吉安市| 汉源县| 仁怀市| 宁阳县| 光泽县| 顺平县| 柘城县| 且末县| 名山县| 资兴市| 高青县| 鄂尔多斯市| 丰宁| 枣庄市| 建水县| 双辽市| 汾阳市| 监利县| 扶沟县| 兴山县| 鲜城| 册亨县| 临江市| 抚远县| 横山县| 兰考县| 东丽区| 渭南市| 天祝|