zoukankan      html  css  js  c++  java
  • legend标签的一些糊涂帐

    我也没有想到,某一天,我居然和legend标签纠结起来了。

    我在codepen上写了一个原始demo:

    http://codepen.io/myqianlan/pen/RPaxGJ

    可以看到,legend右对齐了,但是margin-right却木有生效!

    why? why? why?

    真是百思不得其解,于是进行了问题搜索,QQ群求助,结果是似乎没人理我,或者理我的方式也不对,我想静静。

    静静也不能解决我的疑问呀。。只能继续搜寻,找原因。

    茫茫之中,一段文字引起了我的注意

    http://www.w3schools.com/tags/tag_legend.asp 最下面

    Default CSS Settings
    Most browsers will display the <legend> element with the following default values:
    
    Example
    
    legend {
        display: block;
        padding-left: 2px;
        padding-right: 2px;
        border: none;
    }
    

    好的,大部分浏览器legend的默认样式为block!!!

    block为啥能实现右对齐? block为啥占位跟inline-block一样?我能将其重设为inline吗?一连串的问题,赶着让我去自己测试。

    测来又测去,发现了一个情况:

    legend标签浏览器默认为块元素,并且CSS是不能修改其为行内元素的(不同浏览器实现有差,但第一个legend均不管怎么改,都是block),但其占位却跟inline-block一样。chrome下其能够响应text-align,我认为这是一个bug,是不标准的。

    呵了个呵,这legend标签到底是个什么鬼!

    最后,如果要实现最初demo的效果,使用float吧。

    关于这个问题,我为啥会纠结这么久,我只想说:我不是认真,我就是想知道为什么!

  • 相关阅读:
    .gitignore语法
    每日阅读
    css摘要
    ubuntu安装qq、微信
    django中views中方法的request参数
    js html标签select 中option 删除除了第一行外的其他行
    js 新增标签、标签属性
    python中None与0、Null、false区别
    python class中__init__函数、self
    for foreach循环
  • 原文地址:https://www.cnblogs.com/myqianlan/p/4505732.html
Copyright © 2011-2022 走看看