今天用css做下拉菜单,因为不需要做手机自适应,再手机里看起来工整一点就行,可是列表中最后一个li的宽度撑开了父div,导致看起来很糟糕,所以给父元素加overflow:hidden;但是下拉列表也被隐藏了!

主要代码如下 <!-- f代表father ul; c代表 child ul--> 。

<div>
<ul class=“f”>
<il>
点我下拉
<ul class="c">
<il>1</li>
<il>2</li>
<il>3</li>
</ul>
<li>
<li>没有下拉</li>
<li>没有下拉</li>
<li>没有下拉</li>
</ul>
</div>
div { width:1000px; overflow:hidden; }

.f>li {position:relative; float:left;}

.c { display:none; position:absolute, }

.f>li:hover .c{display:block;}

我本以为 ul.c 已经脱离了文档流,不会受div overflow:hidden的限制,但事实却还是把它隐藏了。

因为 ul.c 脱离了文档流,,虽然下拉列表出现并不会撑开ul.f,但却受 ul.fa relative 的控制, 加上 ul.fa 的祖先是div,所以div依旧是他们的老祖宗,把下面几个小虾米全给隐藏掉了。

明白了这个,我觉得让ul.c 成为 div的祖先,这样才可以脱离它的掌控。

于是我把ul.fa的relative取消了,让ul.c相对于body定位,这样的确脱离了被隐藏的厄运,但是却无法与ul.f一一对应了,因为ul.c是loop出来的,没办法单独加class真是避坑落井啊!

于是我还是寻求css方面的突破吧,继续冥思苦想

既然ul.f的relative不可以去掉,那么如果它的父元素也就是div 只要有overflow就会对他生效,下面的子孙就免不了被隐藏的厄运。

所以就不要设置overflow了,那么超出父元素的 li 该如何解决呢?

唯一的办法就是把ul.f li 设置成百分比布局,不让他超出。

看来这是唯一的办法,

可能我的水平low,无法从overflow的魔爪下救出c。

overflow第一次觉得你有点可恶的更多相关文章

  1. 【转载】C# 中的委托和事件(详解)

    <div class="postbody"> <div id="cnblogs_post_body" class="blogpost ...

  2. 第一次在stack overflow回答问题

    越发感觉英语的重要性,尝试阅读英文与写作英文.于是选择了stack overflow来进行实践.作为萌新小白,只学习过C语言,就在c标签下乱逛.尝试看懂一些问题且试着回答. 发现一个问题: I nee ...

  3. IE6、IE7、IE8中overflow:hidden无效问题

    在做图片无缝滚动效果时遇到了这个兼容问题 div宽1000px高250px超出隐藏. 但在Firefox中正常,超出部分隐藏,但是在IE6.IE7.IE8.Sogou高速下都显示了出来.做了这么多年的 ...

  4. onclick控制元素显示与隐藏时,点击第一次无反应的原因

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  5. 移动端html的overflow:hidden属性失效问题

    这第一次做手机端网页,在交付测试的时候发现一个问题, 就是body的宽度,我设置了overflow:hidden,在谷歌调试的时候确实是不能滑动的,但是在手机端测试的时候发现,overflow:hid ...

  6. Stack Overflow是如何做应用缓存的

    首先要说下缓存是什么?缓存,就是在取出数据结果后,暂时将数据存储在某些可以快速存取的位置(例如各种NoSQL如Redis,HBase,又或MemoryCache等等),于是就可以让这些耗时的数据结果多 ...

  7. Tishreen-CPC 2018 G. Colors Overflow(分块)

    Problem G. Colors Overflow Input file: standard input Output file: standard output Balloon Color: Da ...

  8. 《Go 精进之路》 读书笔记 (第一次更新)

    <Go 精进之路> 读书笔记.简要记录自己打五角星的部分,方便复习巩固.目前看到p120 Go 语言遵从的设计哲学为组合 垂直组合:类型嵌入,快速让一个类型复用其他类型已经实现的能力,实现 ...

  9. Stack Overflow 排错翻译 - Closing AlertDialog.Builder in Android -Android环境中关闭AlertDialog.Builder

    Stack Overflow 排错翻译  - Closing AlertDialog.Builder in Android -Android环境中关闭AlertDialog.Builder 转自:ht ...

随机推荐

  1. HDOJ1002题A + B Problem II,2个大数相加

    Problem Description I have a very simple problem for you. Given two integers A and B, your job is to ...

  2. asterisk manager api 配置 (manager.conf)

    http://blog.csdn.net/niino/article/details/5748805 要激活AMI,需要在/etc/asterisk/manager.conf中,[general]块下 ...

  3. Java中json工具对比分析

    Java中几个json工具分析 1, 环境 JDK1.6+IDE(IntelliJ IDEA)+windowsXP+GBK编码 2,分析对象 jackson1.8.2 http://jackson.c ...

  4. kafka consumer频繁reblance

    转载请注明地址http://www.cnblogs.com/dongxiao-yang/p/5417956.html 结论与下文相同,kafka不同topic的consumer如果用的groupid名 ...

  5. SQL ID自增列从1开始重新排序 分类: SQL Server 2014-05-19 14:46 652人阅读 评论(0) 收藏

    数据库中把ID自增长重置成1: 一般做法:(太麻烦) 复制表数据->删除原表.新建一张表->粘贴: 新方法: 数据库中:新建查询->复制.粘贴一下代码->修改表名,执行即可(先 ...

  6. form与action之setter与getter(转)

    对于表单提交数据给action时候,可以简单的用setter与getter函数实现值的传递. 例如在jsp里有这么个form: <s:form action="login"& ...

  7. 如何制作iso文件

    UltraISO 9.6.2.3059中文完美破解安装版 http://www.upantool.com/qidong/2011/UltraISO_v9.5.0.2800.html 软碟通v9.6.2 ...

  8. 【2014】【辛星】【php】【秋季】【2】第一个php程序

    <span style="font-family:KaiTi_GB2312;font-size:18px;">*******************设置server** ...

  9. Java实现平衡二叉树(AVLTree)的构建

    近期在学习数据结构上关于平衡二叉树的知识,看了严老师的思路,感觉用java写出递归的构建方式有点困难,由于当中的递归须要把引用传进去,所以感觉是要实现起来比較麻烦,所以就首先想到使用非递归的方式来实现 ...

  10. WCF - 序列化

    数据是信息的载体 在不同环境中有不同的类型 为保证处于不同平台的的应用能够正常的进行数据交互 必须采用一种双方都能理解的数据类型 XML无疑是最好的选择 但不是唯一的选择 例如JSON也是一种普遍认可 ...