如何使用CSS影响一个子元素而不影响其他子元素的宽度

雅各布·尤因

如标题所述,我想找到一种CSS方法,使一个元素的宽度影响其父元素的宽度,但强制该父元素的其他子元素适应该宽度。

这是我正在使用的代码:

<div id="leftToolBar" class="toolbar">
    <div id="canvasHolder"></div>
    <div>   
            <a id="tool_pencil" onclick="setTool('pencil'); return false;" href="#" class="currentTool"><img src="images/pencil.png"/></a>
            <a id="tool_paintbrush" onclick="setTool('paintbrush'); return false;" href="#"><img src="images/paint.png"/></a>
            <a id="tool_floodfill" onclick="setTool('floodfill'); return false;" href="#"><img src="images/bucketfill.png"/></a>
            <a onclick="transform('shiftleft'); return false;" href="#"><img src="images/left.png"/></a>
            <a onclick="transform('shiftright'); return false;" href="#"><img src="images/right.png"/></a>
            <a onclick="transform('shiftdown'); return false;" href="#"><img src="images/down.png"/></a>
            <a onclick="transform('shiftup'); return false;" href="#"><img src="images/up.png"/></a>
            <a onclick="transform('rotleft'); return false;" href="#"><img src="images/rotateleft.png"/></a>
            <a onclick="transform('rotright'); return false;" href="#"><img src="images/rotateright.png"/></a>
            <a onclick="transform('diagonal1'); return false;" href="#"><img src="images/dflip1.png"/></a>
            <a onclick="transform('diagonal2'); return false;" href="#"><img src="images/dflip2.png"/></a>
            <a onclick="transform('vflip'); return false;" href="#"><img src="images/vflip.png"/></a>
            <a onclick="transform('hflip'); return false;" href="#"><img src="images/hflip.png"/></a>
            <a onclick="toggleGrid(); return false;" href="#"><img src="images/grid.png"/></a>
    </div>  
</div>

这是相关的css(到目前为止):

    .toolbar a{
            display: inline-block;
            width: 20px;
            height: 20px;
            text-align: center;
            line-height: 24px;
            border-radius: 0.2em;
            padding: 3px;
            border: 1px solid #AAA;
    }

    .toolbar a.currentTool{
            box-shadow:-1px -1px 1px 1px rgba(0,0,0,0.5) inset, 1px 1px 1px 1px rgba(255, 255, 255, 0.8) inset;
            border: none;
    }

    #canvasHolder {
            background-color: #a0a0a0;
            border: 1px solid #777470;
    }

    #canvasHolder canvas{
            border: 1px solid #666;
            background: repeating-linear-gradient(
                    45deg,
                    #CCC,
                    #CCC 2px,
                    #CCC 4px,
                    #AAA 6px
            );
            display: inline-block;
            vertical-align: center;
    }

这当然不是我想要的。我希望“ canvasHolder” div确定该工具栏的大小超出某个最小值,并让其下面的div中的锚点填充下面的区域,但又不影响“ leftToolBar” div的宽度。

除了硬编码的“最大宽度”数字之外,我可以在此处应用CSS属性的某种组合吗?

星尘Gogeta

<div id="leftToolBar" class="toolbar">
<div id="canvasHolder"></div> 
<div>
        <a class="currentTool"><img src="images/pencil.png"/></a>
        <a><img src="images/paint.png"/></a>
        <a><img src="images/bucketfill.png"/></a>
        <a><img src="images/left.png"/></a>
        <a><img src="images/right.png"/></a>
        <a><img src="images/down.png"/></a>
        <a><img src="images/up.png"/></a>
        <a><img src="images/rotateleft.png"/></a>
        <a><img src="images/rotateright.png"/></a>
        <a><img src="images/dflip1.png"/></a>
        <a><img src="images/dflip2.png"/></a>
        <a><img src="images/vflip.png"/></a>
        <a><img src="images/hflip.png"/></a>
        <a><img src="images/grid.png"/></a>
</div>
</div>
<style>
.toolbar {
		background-color: green;
		width: min-content;
		display: flex;
		flex-wrap: wrap;
}

.toolbar a {
        display: inline-block;
        width: 20px;
        height: 20px;
        text-align: center;
        line-height: 24px;
        border-radius: 0.2em;
        padding: 3px;
        border: 1px solid #AAA;
}

.toolbar a.currentTool{
        box-shadow:-1px -1px 1px 1px rgba(0,0,0,0.5) inset, 1px 1px 1px 1px rgba(255, 255, 255, 0.8) inset;
        border: none;
}

#canvasHolder {
        background-color: #a0a0a0;
        border: 1px solid #777470;
		width: 100px;
		height: 150px;
}
</style>

这样可以完成您想要的吗?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

仅删除输入元素上的一个边框,而不影响其他边框

来自分类Dev

如何在CSS中仅选择一个子元素?

来自分类Dev

将元素的宽度限制为第一个子元素的宽度

来自分类Dev

CSS忽略一个子元素的宽度

来自分类Dev

使用AngularJS Jqlite,如何找到某个元素类型的元素的第一个子元素?

来自分类Dev

震动效果不影响其他元素

来自分类Dev

如何使colspan工作而不影响其他行的宽度

来自分类Dev

jQuery toggle()方法不影响其他重复元素

来自分类Dev

如何在不影响其他元素的情况下增加中间元素的文字字符

来自分类Dev

不影响其他元素在边框宽度更改上的定位

来自分类Dev

CSS将元素的宽度设置为上一个子元素的110%

来自分类Dev

仅删除输入元素上的一个边框,而不影响其他边框

来自分类Dev

如何使隐藏的div向下滑动而不影响同一行中的其他元素

来自分类Dev

CSS菜单将鼠标悬停在一个子元素上,并同时更改所有其他元素

来自分类Dev

是否可以仅设置一个单元格的宽度而不影响phpExcel中的其他单元格?

来自分类Dev

单击一个子元素时如何隐藏所有其他元素

来自分类Dev

使用CSS,如何按其类修改子元素而不影响具有相同类但父元素稍有不同的另一个子元素

来自分类Dev

不影响其他元素在边框宽度更改上的定位

来自分类Dev

使用CSS选择递归列表结构的最后一个子元素

来自分类Dev

CSS悬停不会影响其他元素

来自分类Dev

如何在CSS中设置特定段落元素的样式,而又不影响同一类中的其他段落?

来自分类Dev

更改CSS样式而不影响其他元素

来自分类Dev

React.JS - 多个元素共享一个状态(如何只修改一个元素而不影响其他元素?)

来自分类Dev

如果在使用 RELAX NG Compact 时一个子元素被其他两个独立元素使用会怎样?

来自分类Dev

将一个子元素居中,同时将其他子元素保持在原处。

来自分类Dev

如何将动态设置的 HTML 的 CSS 封装在一个 div 中,使其不影响外部元素?

来自分类Dev

浮动元素宽度影响其他元素的居中

来自分类Dev

XSLT 删除父元素而不影响子元素

来自分类Dev

如何在不影响具有相同状态的其他元素的情况下更改一个元素的状态?

Related 相关文章

  1. 1

    仅删除输入元素上的一个边框,而不影响其他边框

  2. 2

    如何在CSS中仅选择一个子元素?

  3. 3

    将元素的宽度限制为第一个子元素的宽度

  4. 4

    CSS忽略一个子元素的宽度

  5. 5

    使用AngularJS Jqlite,如何找到某个元素类型的元素的第一个子元素?

  6. 6

    震动效果不影响其他元素

  7. 7

    如何使colspan工作而不影响其他行的宽度

  8. 8

    jQuery toggle()方法不影响其他重复元素

  9. 9

    如何在不影响其他元素的情况下增加中间元素的文字字符

  10. 10

    不影响其他元素在边框宽度更改上的定位

  11. 11

    CSS将元素的宽度设置为上一个子元素的110%

  12. 12

    仅删除输入元素上的一个边框,而不影响其他边框

  13. 13

    如何使隐藏的div向下滑动而不影响同一行中的其他元素

  14. 14

    CSS菜单将鼠标悬停在一个子元素上,并同时更改所有其他元素

  15. 15

    是否可以仅设置一个单元格的宽度而不影响phpExcel中的其他单元格?

  16. 16

    单击一个子元素时如何隐藏所有其他元素

  17. 17

    使用CSS,如何按其类修改子元素而不影响具有相同类但父元素稍有不同的另一个子元素

  18. 18

    不影响其他元素在边框宽度更改上的定位

  19. 19

    使用CSS选择递归列表结构的最后一个子元素

  20. 20

    CSS悬停不会影响其他元素

  21. 21

    如何在CSS中设置特定段落元素的样式,而又不影响同一类中的其他段落?

  22. 22

    更改CSS样式而不影响其他元素

  23. 23

    React.JS - 多个元素共享一个状态(如何只修改一个元素而不影响其他元素?)

  24. 24

    如果在使用 RELAX NG Compact 时一个子元素被其他两个独立元素使用会怎样?

  25. 25

    将一个子元素居中,同时将其他子元素保持在原处。

  26. 26

    如何将动态设置的 HTML 的 CSS 封装在一个 div 中,使其不影响外部元素?

  27. 27

    浮动元素宽度影响其他元素的居中

  28. 28

    XSLT 删除父元素而不影响子元素

  29. 29

    如何在不影响具有相同状态的其他元素的情况下更改一个元素的状态?

热门标签

归档