模拟公交站台竖直排列,两端对齐

今天看到一个公家车站台的公家站牌,对站名的排列方式很有兴趣,html和css没有提供文字竖直排列的简便方法,需要我们利用一些技巧才能完成

 

 大概要的效果就是这样的,竖直排列,两端对齐

首先先对竖直排列进行设计

先上html代码:

 1     <ul>
 2         <li><b>站牌1b>li>
 3         <li><b>站牌2b>li>
 4         <li><b>长站牌3b>li>
 5         <li><b>很长的站牌4b>li>
 6         <li><b>超长的站牌5b>li>
 7         <li><b>站牌6b>li>
 8         <li><b>站牌一二7b>li>
 9         <li><b>站牌一8b>li>
10         <li><b>站牌9b>li>
11         <li><b>站牌一二10b>li>
12         <li><b>站牌1b>li>
13         <li><b>站牌2b>li>
14         <li><b>长站牌3b>li>
15         <li><b>很长的站牌4b>li>
16         <li><b>超长的站牌5b>li>
17     ul>

先对ul进行一些基本的配置:

1 ul {
2     width: 260px;
3     height: 90px;
4     border: 1px solid yellow;
5     margin: 15px;
6     list-style: none;
7 }

初步的效果是:

利用flex伸缩盒来实现效果:

ul {width: 260px;height: 90px;border: 1px solid yellow;margin: 15px;list-style: none;/*定义flex伸缩盒*/display: -webkit-flex;display: flex;/*设置伸缩盒的子元素向两端对齐*/justify-content: space-between;-webkit-justify-content: space-between;-moz-justify-content: space-between;
}ul li {font-size: 11px;/*固定宽度使文字强制换行竖直排列*/width: 12px;text-align: center;height: 80px;margin-top: 5px;
}

竖直排列的效果:

 

接下来是竖直方向的两端对齐,我使用的方法是给每一个元素加上一个标签,在li里面再定义一个flex盒子,以达到效果,个人感觉有点麻烦:

html代码:

<ul><li><span>span><span>span><span>1span>li><li><span>span><span>span><span>2span>li><li><span>span><span>span><span>span><span>3span>li><li><span>span><span>span><span>span><span>span><span>span><span>4span>li><li><span>span><span>span><span>span><span>span><span>span><span>5span>li><li><span>span><span>span><span>6span>li><li><span>span><span>span><span>span><span>span><span>7span>li><li><span>span><span>span><span>span><span>8span>li><li><span>span><span>span><span>9span>li><li><span>span><span>span><span>span><span>span><span>10span>li>ul>

css代码:

ul {width: 260px;height: 90px;border: 1px solid yellow;margin: 15px;list-style: none;/*定义flex伸缩盒*/display: -webkit-flex;display: flex;/*设置伸缩盒的子元素向两端对齐*/justify-content: space-between;-webkit-justify-content: space-between;-moz-justify-content: space-between;
}ul li {font-size: 11px;/*固定宽度使文字强制换行竖直排列*/width: 12px;text-align: center;height: 80px;margin-top: 5px;/*定义li的flex伸缩盒*/display: -webkit-flex;display: flex;/*设置伸缩盒的子元素向两端对齐*/justify-content: space-between;-webkit-justify-content: space-between;-moz-justify-content: space-between;/*设置子元素的排列方向是竖直方向*/flex-direction: column;-webkit-flex-direction: column;-moz-flex-direction: column;/*即每个li的子元素span为竖直方向的两端对齐*/
}

最终的效果是:

 

主要用到的3句代码是:

display:flex; 定义flex伸缩盒

justify-content; 设置子元素的对齐方式

flex-direction;设置伸缩盒子元素的方向 

 

转载于:https://www.cnblogs.com/Gary-Guoweihan/p/4912587.html


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部