最近做了个项目,其中有项目需求是需要div根据内容进行宽度自适应。下面小编给大家分享一段代码关于CSS 实现div宽度根据内容自适应 的相关知识,需要的朋友参考下
在实际应用中,可能有这样的需求,那就是需要div根据内容进行宽度自适应。有很多开发者可能误以为如果不设定div的宽度就可以实现宽度随内容自适应,其实这是错误的,因为在默认状态下,div的宽度值是百分之百,也就是会占满整个父元素宽度。 代码实例如下:
复制代码代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="https://www.jb51.net/" /> <title>脚本之家</title> <style type="text/css"> .parent{ width:400px; height:400px; border:1px solid red; } .children{ border:1px solid blue; height:50px; } </style> </head> <body> <div class="parent"> <div class="children">欢迎来到蚂蚁部落,今天阳光不错!</div> </div> </body> </html>
以上代码可以看出,默认状态下,并不能够实现我们想要的效果。 下面对以上代码进行修改如下:
复制代码代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="https://www.jb51.net/" /> <title>脚本之家</title> <style type="text/css"> .parent{ width:400px; height:400px; border:1px solid red; } .children{ border:1px solid blue; height:50px; display:inline-block; *display:inline; *zoom:1; } </style> </head> <body> <div class="parent"> <div class="children">欢迎来到脚本之家,今天阳光不错!</div> </div> </body> </html>
以上代码实现我们想要的效果,并且各浏览器兼容性良好,主要是添加如下核心代码:
复制代码代码如下: display:inline-block; *display:inline; *zoom:1;
当然内联元素不会存在以上麻烦,因为内联元素并不能够设置宽度,只能够随着内容自适应宽度。
以上所述给大家介绍了CSS 实现div宽度根据内容自适应 的相关知识,希望对大家有所帮助。
|