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

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%;
}
}
主站蜘蛛池模板: 双流县| 赤峰市| 永城市| 宁晋县| 内江市| 亳州市| 门源| 宝鸡市| 永丰县| 巴彦淖尔市| 洛阳市| 东海县| 玛沁县| 睢宁县| 错那县| 甘南县| 青铜峡市| 永安市| 从化市| 元氏县| 阜阳市| 酉阳| 珲春市| 大余县| 彭州市| 雷山县| 元朗区| 南投市| 贵南县| 肃宁县| 临邑县| 郴州市| 桂林市| 永修县| 凤台县| 明溪县| 格尔木市| 于田县| 慈溪市| 卢湾区| 大庆市|