高度和宽度不适用于跨度吗?

总菜鸟问题,但在这里。

的CSS

.product__specfield_8_arrow {

    /*background-image:url(../../upload/orng_bg_arrow.png);
    background-repeat:no-repeat;*/
    background-color:#fc0;
    width:50px !important;
    height:33px !important;
    border: 1px solid #dddddd;
    border-left:none;
    border-radius:5px;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-bottom-left-radius:0px;
    border-top-left-radius:0px;
    -moz-border-radius-bottomleft:0px;
    -moz-border-radius-topleft:0px;
    -webkit-border-bottom-left-radius:0px;
    -webkit-border-top-left-radius:0px;
    margin:0;
    padding:2px;
    cursor:pointer;
}​​​

的HTML

<span class="product__specfield_8_arrow">&nbsp;</span>​

小提琴

基本上,我试图模拟一个按钮,使一个跨度(或某个范围)看起来像一个输入字段旁边的按钮,由于自动填充生成器会在onEnter上产生错误,因此实际上不需要是一个输入字段。认为这是目前的快速解决方案,但显然不是。

谢谢。

Jim小小2020/03/24 17:44:48

跨度作为内联元素开始。例如,您可以将其显示属性更改为block,然后其height / width属性将开始生效。

神无2020/03/24 17:44:48

span {display:block;} 还增加了换行符。

为了避免这种情况,请使用span {display:inline-block;},然后您可以向内联元素添加宽度和高度,并可以在块内对齐它:

span {
        display:inline-block;
        width: 5em;
        font-weight: normal;
        text-align: center
     }

这里更多

SamTomEva2020/03/24 17:44:48

span默认情况下,s是内联显示的,这意味着它们没有高度和宽度。

尝试将a添加display: block到您的跨度中。

Stafan飞云Sam2020/03/24 17:44:48

跨度是一个内联元素。它没有宽度或高度。

您可以将其转换为块级元素,然后它将接受您的维度指令。

span.product__specfield_8_arrow
{
    display: block; /* or inline-block */
}
番长樱梅2020/03/24 17:44:48

跨度只有在将其设为块元素时才采用宽度和高度。

span {display:block;}
阳光番长2020/03/24 17:44:48

尝试使用div而不是span或使用CSS display: block;display: inline-block;- span是默认情况下不能使用widthheight属性的内联元素

西里神奇2020/03/24 17:44:48

根据@Paul的评论,如果指定了display:块,则span不再是一个内联元素,而是在下一行出现后的元素。

我来这里是为了找到我的跨度高度问题的解决方案,而我得到了自己的解决方案

overflow:hidden;内联添加和保留它可以解决刚刚在IE8 Quirks模式下测试的问题

JinJin2020/03/24 17:44:48

受@Hamed的启发,我添加了以下内容,它对我有用:

display: inline-block; overflow: hidden;