CSS 子元素宽度变宽时,如何撑开父元素?

html-css015

CSS 子元素宽度变宽时,如何撑开父元素?,第1张

希望子元素撑开父级元素可以使用以下两种方法:

1、父级版元素宽度不固定,父级元素设置为inline-block或者添加float;

2、对父级元素使用min-width,这样只限制了最小的宽度,如果子元素变宽,父级同样会变宽。

3、首先父类元素必须不是相对定位,如果是相对定位宽度就会默认为百分百。所以必须是绝对定位或者fixed。其实设置了这一步,父类的div已经达到要求了。

4、用第三种方法有个不足之处就是,如果子类运用了浮动的话,因为浮动会会脱离文档流,所以不能撑开父类,这时候可以给父类元素加一句overflow:hidden这样就可以让浮动元素也撑开父类。

扩展资料:

当子元素全部浮动时如何解决父元素无法撑开的解决办法:

1、父元素添加高度。

此方法可以将父元素显示出来。

缺点:但当调整子元素高度的时候,若要实现父元素包含子元素的效果,就也要调整父元素高度。实在很麻烦!所以此方法不要用!

2、父元素也添加浮动。

以暴制暴的方法!别人浮起来自己也要跟着一起浮。

缺点:虽然可以解决问题,但是后面要添加有不需要浮动的子元素,则影响其显示。

3、给父元素添加overflow:hidden;

缺点:一旦包含非浮动的子元素,则会影响其显示。

4、给父元素添加一个无关的元素,让添加的无关元素去清除浮动 clean:both;

缺点:添加了一个无关元素,代码阅读受影响。

5、通过伪类来实现,在需要清除浮动的父元素里,添加一个清除浮动的伪类。

推荐此方法,比较高级,而且没有以上缺点。

原始处理方法是将要展示的图片进行处理。比如你的DIV宽度为500px(像素),那你上传的图片或放入网页的图片宽度就要小于500px,也就是你图片需要图片软件剪切、等比例缩小方法处理后再上传、放入网页中解决撑破撑开DIV问题。

常见很多大型图片站点、新闻站点都是将照片图片进行处理适应网页宽度情况下,进行图片编辑处理的。

二、防止图片撑开DIV方法二

如果不处理照片方法适应DIV有限宽度,那可以对DIV设置隐藏超出内容方法。只需要对DIV设置宽度后加入CSS样式“overflow:hidden”即可解决隐藏图片比DIV过宽部分解决撑破DIV问题。

三、解决方法三

对图片img标签中只加入宽度即可解决。这样可以等比例缩小图片,不会影响图片画面质量。

比如你的网页DIV宽度为500px,那你上传图片后对img标签设置width等于500以下即可。

即可解决图片过宽导致DIV SPAN撑破,这样好处可以等比例放大缩小图片。

四、CSS解决撑破方法四

这种方法使用CSS直接对div内的img进行宽度设置,这样不好是如果图片过小会影响网页浏览图片时候效果。

1、首先新建一个html文件,命名为test.html。

2、在test.html文件内,使用p标签创建两行文字,代码如下。

3、在test.html文件内,设置第一个p标签id属性为mp,主要用于下面使用css设置该p元素隐藏。

4、在test.html文件内,编写标签<style type="text/css"></style>,下面将在标签内编写css样式。

5、在css标签内,使用css设置p标签的行高为30px,在浏览器运行test.html。

6、在css标签内,对id为mp的p元素样式进行单独定义,通过dispay属性设置为none,实现该p元素隐藏不可见。

7、最后在浏览器打开test.html文件,查看实现的效果。