zoukankan      html  css  js  c++  java
  • 逆天的IE7中,诡异的横向滚动条

           今天老邹我又要吐槽IE7了,这个奇葩浏览器总是不让省心。这回遇到的问题,灰常难发现是怎么回事,不过还是让我发现原因,哈哈,只要原因去干掉这个问题比躲避问题用别的办法绕开要爽的多啊。

           首先我还是介绍下,通常我们的网页里会有文章列表或帖子列表等模块,当然还有其他的一些也会涉及这些,我主要说一说大家常常出现的情况。老邹我在这里就用文章列表举例说明。文章列表往往是每一个项里有文章标题、描述、作者和时间等等。长什么样子呢?

           请看下图:

    逆天的IE7中,诡异的横向滚动条

      

    上面这个是我想要的效果。

    但是我出现什么问题了?大家再看下图:

     

    逆天的IE7中,诡异的横向滚动条

     

     

          看到没,在逆天的IE7模式下,居然出现横向滚动条了。让我非常不理解,我怎么得罪他了,他偏偏这么对待我。经过我和他数小时的对战,我终于知道他的弱点了。

    起初我找原因。用F12调试。找了半天,没有找到到底是哪里超出了。难道有个幽灵在旁边,这不科学。

    (。。。。。此处经过省略1w字。。。。。)

          最后我把每个右下角的时间去了。我靠,居然正常了。原来是我的时间考的鬼,这为毛啊?我于是再次询问我又爱又恨的度娘。找到了一篇文章就是这个地址,有空大家可以去看看,没空就算了(文章地址:http://talkser.blog.163.com/blog/static/206457252201282555732752/)

    大概意思是说浮动定位要给浮动元素具体的宽度,不然会有默认值去影响,去超出。

          我想了想,我这里的时间没有给宽度,那就给一个吧。不错,他正常了,于是我以为浮动元素和绝对定位元素都要给宽度,不然会影响。反正是解决了。

          (虽然解决了,但是还是心里不舒服

          可是我转头想了想。如果我换了一个标签会怎样,(这里和大家说明一下:我的时间通常用<i>标记表示。他默认是斜体。)于是我把 <i>标签换成了<span>标签。居然没有任何异常。看来不是浮动定位和绝对定位的原因。我想到:这两个奇葩标签都是行内标记,唯一的区别就是<i>标记的字体是斜的,那好办,我把<span>标记描述成斜体,如果有问题,那么就是这个斜体的问题。起初我就是无聊想试试,认为不可能是斜体的原因。可是,后面发生的事情,我和我的小伙伴们都惊呆了,改成斜体后,横向滚动条出来了,IE7,你的节操何在啊?

    原来搞了半天是这个原因。

    所以解决办法也有。有两种。

    第一:如果你要保留斜体,那么就给你的标记加上一个固定高。

    第二:如果不要斜体,那么就加上font-style:normal;就好了。

    当然我还是用的在浮动定位里套的绝对定位。这样可以准确和简单定位。

    我另外也弄了几个注释,大家可以试一试,IE7的调试真的很有意思哦。希望大家多多分享你的问题。

    具体代码如下:

      1 <!DOCTYPE html>
      2 
      3 <html lang="en" xmlns="http://www.w3.org/1999/xhtml">
      4 <head>
      5     <meta charset="utf-8" />
      6     <title></title>
      7     <style type="text/css">
      8         * {
      9             margin: 0;
     10             padding: 0;
     11         }
     12 
     13         .clear {
     14             clear: both;
     15         }
     16 
     17         .main {
     18             width: 1100px;
     19             margin: 20px auto;
     20             border: 1px solid red;
     21             padding-bottom: 10px;
     22         }
     23 
     24             .main .block {
     25                 width: 495px;
     26                 height: 100px;
     27                 margin: 10px 0 0 30px;
     28                 padding: 5px;
     29                 background: #eee;
     30                 float: left;
     31                 position: relative;
     32             }
     33 
     34                 .main .block h3 {
     35                     margin: 8px 0 0 8px;
     36                 }
     37 
     38                     .main .block h3 a {
     39                         font-family: 微软雅黑;
     40                         font-size: 16px;
     41                         text-decoration: none;
     42                     }
     43 
     44                 .main .block p {
     45                     font-family: 微软雅黑;
     46                     font-size: 14px;
     47                     text-indent: 2em;
     48                     color: gray;
     49                 }
     50 
     51                 .main .block span {
     52                     position: absolute;
     53                     right: 0px;
     54                     bottom: 0px;
     55                     font-family: Arial;
     56                     font-size: 12px;
     57                     color: #666;
     58                     font-style: italic; /*如果不用斜体,改成normal,也不用下面的宽度了*/
     59                     width: 100%; /*如果保留斜体,请给一个具体宽度*/
     60                 }
     61 
     62         /*.main .block i {
     63                     position: absolute;
     64                     right: 0px;
     65                     bottom: 0px;
     66                     font-family:Arial;
     67                     font-size:12px;
     68                     color:#666;
     69                 }
     70             这里是i标记,可以和span替换的玩一玩
     71             */
     72     </style>
     73 </head>
     74 <body>
     75     <div class="main">
     76         <div class="block">
     77             <h3><a href="#">我是文章的标题哦</a></h3>
     78             <p>
     79                 我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦...
     80             </p>
     81             <span>2014-4-14</span>
     82             <!--<i>2014-4-14</i>-->
     83         </div>
     84         <div class="block">
     85             <h3><a href="#">我是文章的标题哦</a></h3>
     86             <p>
     87                 我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦...
     88             </p>
     89             <span>2014-4-14</span>
     90             <!--<i>2014-4-14</i>-->
     91         </div>
     92         <div class="block">
     93             <h3><a href="#">我是文章的标题哦</a></h3>
     94             <p>
     95                 我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦...
     96             </p>
     97             <span>2014-4-14</span>
     98             <!--<i>2014-4-14</i>-->
     99         </div>
    100         <div class="block">
    101             <h3><a href="#">我是文章的标题哦</a></h3>
    102             <p>
    103                 我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦...
    104             </p>
    105             <span>2014-4-14</span>
    106             <!--<i>2014-4-14</i>-->
    107         </div>
    108         <div class="block">
    109             <h3><a href="#">我是文章的标题哦</a></h3>
    110             <p>
    111                 我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦...
    112             </p>
    113             <span>2014-4-14</span>
    114             <!--<i>2014-4-14</i>-->
    115         </div>
    116         <div class="block">
    117             <h3><a href="#">我是文章的标题哦</a></h3>
    118             <p>
    119                 我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦,我是文章的描述哦...
    120             </p>
    121             <span>2014-4-14</span>
    122             <!--<i>2014-4-14</i>-->
    123         </div>
    124         <div class="clear"></div>
    125     </div>
    126 </body>
    127 </html>

     为本人原创,在此发表。

     如有问题可以与本人联系

     邹学良  Terry Zou

     QQ:1526348043

     新浪微博:http://weibo.com/coolsbook

     腾讯微博:http://t.qq.com/CoolsBook

     更多关注请访问:http://www.coolsbook.com

     原文地址:http://www.coolsbook.com/Post/p/165

    为本人原创,在此发表。 如有问题可以与本人联系 邹学良 Terry Zou QQ:1526348043 新浪微博:http://weibo.com/coolsbook 更多关注请访问:http://www.coolsbook.com 原文地址: http://www.coolsbook.com/About coolsbook
  • 相关阅读:
    redis基础配置
    brew安装mysql
    iptables 执行清除命令 iptables -F 要非常小心
    nginx反向代理部署nodejs配置
    Starting MySQL... ERROR! The server quit without updating PID file 问题解决
    iframe自适应高度问题
    js正则常用的一些东西
    node.js批量重命名文件
    [转]MySQL5字符集支持及编码研究
    PHP $_SERVER的使用
  • 原文地址:https://www.cnblogs.com/CoolsBook/p/3664019.html
Copyright © 2011-2022 走看看