首頁 > web前端 > html教學 > 纯CSS如何实现子元素自适应宽度并居中_html/css_WEB-ITnose

纯CSS如何实现子元素自适应宽度并居中_html/css_WEB-ITnose

WBOY
發布: 2016-06-21 08:51:56
原創
1581 人瀏覽過



如上图所示,红色部分DIV宽度是100%,蓝色的是子元素,子元素有border-bottom,且文字右边有一个双箭头。

现要求如下:
1、纯CSS实现,不使用JS和table。
2、文字因为是用户输入的,所以每一行的文字宽度都不是固定的,但是文字只考虑一行的情况,不考虑两行,可以用white-space:nowrap;禁止换行。
3、每个子元素右边的双箭头必须是对齐的,右边双箭头与最长那行文字的距离是10px固定的,其它行双箭头与该行双箭头对齐。
4、因为这个是手机端的网页,所以可以考虑用CSS3、HTML5,只要主流的手机浏览器支持即可

不知道上面的要求,纯CSS有没有办法实现,具体的思路是什么,HTML可以随意写,只要能实现像图片中这样显示就可以。


回复讨论(解决方案)

另外右边双箭头与最长那行文字的距离是10px固定的,其它行双箭头与该双箭头对齐

<div class="iprocat">	<ul>		<li><a href="/index.php?catid=8">American Axle</a></li>		<li><a href="/index.php?catid=9">Germanic Axle</a></li>		<li><a href="/index.php?catid=10">Suspension</a></li>		<li><a href="/index.php?catid=11">Bogie</a></li>		<li><a href="/index.php?catid=12">Brake Drum</a></li>		<li><a href="/index.php?catid=13">Axle</a></li>		<li><a href="/index.php?catid=14">Brake Disc</a></li>		<li><a href="/index.php?catid=15">Brake Shoe</a></li>		<li><a href="/index.php?catid=16">Wheel Hub</a></li>		<li><a href="/index.php?catid=17">King Pin Series</a></li>		<li><a href="/index.php?catid=18">Fifth Wheel Series</a></li>	</ul></div>
登入後複製


*{margin:0;padding:0;outline:none;}body{font:menu;font-size:0.24rem;}a{text-decoration:none;color:#333;}a:hover{text-decoration:underline;color:#d00;}li{list-style:none;}img{border:none;vertical-align:top;}@font-face {  font-family: 'iconfont';  src: url('//at.alicdn.com/t/font_1460087185_4783318.eot'); /* IE9*/  src: url('//at.alicdn.com/t/font_1460087185_4783318.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */  url('//at.alicdn.com/t/font_1460087185_4783318.woff') format('woff'), /* chrome、firefox */  url('//at.alicdn.com/t/font_1460087185_4783318.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/  url('//at.alicdn.com/t/font_1460087185_4783318.svg#iconfont') format('svg'); /* iOS 4.1- */}.iprocat{background:url(../images/iprocat-bg.jpg);text-align:center;overflow:hidden;}.iprocat ul{display:inline-block;text-align:left;font-size:.24rem;line-height:.4rem;padding-bottom:.24rem;}.iprocat li{border-bottom:1px solid #ddd;position:relative;}.iprocat li:before,.iprocat li:after{content:'';border-bottom:1px solid #ddd;width:100%;position:absolute;bottom:-1px;}.iprocat li:before{right:100%;}.iprocat li:after{left:100%;}.iprocat li a{color:#666;display:block;}.iprocat li a:before{content:'\e604';font-family:'iconfont';float:right;color:#ddd;margin-left:.1rem;}
登入後複製



视觉上实现了,但是border-bottom是使用:before和:after拼合起来实现的,不知道有没有更好的办法

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板