gpt4 book ai didi

javascript - 我怎样才能有效地在列表中 flex 我的元素?

转载 作者:行者123 更新时间:2023-11-28 14:02:46 24 4
gpt4 key购买 nike

我正在尝试 flex 包含其中文本的列表。

我无法有效地找到一种方法来 flex 列表中的元素,例如,我的目标是实现诸如此类的目标。

      () Text 
() Text
() Text
() Text
() Text

我最初的想法是在 div 中创建 ul,然后为每个 li 创建 left对齐所有内容的 CSS 属性,例如 left: 80,然后是 left:60left:40 然后是 left: 60左:80。不幸的是,这没有用,边距也没有用。

<div class="d-flex h-100 w-25 m-0 p-0 position-fixed align-items-center justify-content-center" style="background: transparent; left: 0;">
<ul>
<li>
<svg height="100" width="100" style="left: 20"> <-- Does not allow me to left:20 for some reason, but can allow me to left: 0 above?
<circle cx="50" cy="50" r="40" stroke-width="3" fill="red"> </circle>
</svg>
</li>
....
</ul>
</div>

我想创建每个列表项都包含一个圆圈,圆圈旁边有文本,这样文本只有在与文本关联的圆圈被单击时才可见。

创建这条曲线的最佳方法是什么?为了以后的设计引用,我希望当一个被点击时,圆圈会改变大小,其他的会消失(预计这里不会回答,仅供设计引用)

最佳答案

最终,如果它出现了,css shape-in​​side 属性应该可以解决这个问题。 (参见 https://drafts.csswg.org/css-shapes-2/)同时,这里是一个建议的解决方案。我正在使用 html 创建 li 类并使用 css 设置每个元素符号的 margin-left 属性的样式。然后我可以使用类在一个方向上模拟一条平缓的曲线,并在另一侧重复每个类来模拟曲线的另一半。您可以根据需要调整 margin-left 值。你提到边距对你不起作用,但我想知道这是否是因为我没有看到你的代码的某些方面,因为我的版本有效。

<!DOCTYPE html>
<html>
<head>
<style>
.a {
margin-left: 30px;
}
.b {
margin-left: 23px;
}
.c {
margin-left: 18px;
}
.d {
margin-left: 16px;
}

</style>
</head>
<body>

<ul>
<li class="a">Coffee</li>
<li class="b">Tea</li>
<li class="c">Coca Cola</li>
<li class="d">Sprite</li>
<li class="d">Something else</li>
<li class="c">Other text</li>
<li class="b">Espresso</li>
<li class="a">Root beer</li>
</ul>
</body>
</html>

这是一个具有相同 css/html 的 fiddle https://jsfiddle.net/L2o8cfv5/

要在单击时更改大小,您可以让 jquery 更改每个类的 margin-left 属性和/或更改 margin-top 属性以使圆看起来变大。

关于javascript - 我怎样才能有效地在列表中 flex 我的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57532995/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com