这应该是一个简单的 CSS 样式挑战 [已关闭]

This should be a simple CSS styling challenge [closed]

提问人:James Brett 提问时间:11/10/2023 最后编辑:James Brett 更新时间:11/10/2023 访问量:49

问:


编辑问题以包括所需的行为、特定问题或错误以及重现问题所需的最短代码。这将帮助其他人回答这个问题。

13天前关闭。

我想使选项卡内的两个文本项垂直居中,但我正在努力。如果我更改行高,它们看起来更好,但当我缩小窗口时(没有响应)则不然。相关网页:https://uk.outdore.co.uk/help/

如果您还可以在选项卡(红色箭头)之间添加一些间距,而不会导致选项卡进入 2 行,那将是一个奖励。

我无法在这里的代码示例中复制这个问题 - 其他样式覆盖了我在网站中的努力,生成最小的可重现示例的环境非常复杂。

enter image description here

css wordpress google-chrome-devtools elementor

评论

1赞 t.niese 11/10/2023
请直接在问题中包含一个最小的可重现示例,而不是作为外部网站的链接。
1赞 Paulie_D 11/10/2023
寻求代码帮助的问题必须包含在问题本身中重现它所需的最短代码,最好是在堆栈代码段中。尽管您提供了链接,但如果它变得无效,您的问题对未来遇到相同问题的其他 SO 用户将毫无价值。看到我的网站/示例中的某些内容不起作用,我可以粘贴链接吗
0赞 James Brett 11/10/2023
我无法在这里的代码示例中复制这个问题 - 其他样式覆盖了我在网站中的努力,生成最小的可重现示例的环境非常复杂。
1赞 Kalnode 11/10/2023
虽然这是一项努力,但进行基本复制的行为往往会揭示问题所在。使用像 codepen.io/trending 这样的在线 IDE 会有所帮助,然后共享起来会容易得多。

答:

-2赞 vale 11/10/2023 #1

为了垂直居中 div 的内容,我会按如下方式设置其类的样式:

.divs-class{
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
}
-1赞 Prakash Mohit 11/10/2023 #2

嘿,我有点解决了你的问题 看到两个容器的宽度都是 50px,所以把它减小到 40px 然后为两个元素添加 10 px 的边距 您将在按钮之间获得所需的间隙。看,我将其更改为 40 像素并添加了 10 像素的边距,为 10px 的元素提供边距,并将两个元素的宽度从 50 像素减小到 40 像素,我还将边框半径更改为 29%,以便看起来更好。 希望它能:)

评论

0赞 Community 11/10/2023
您的答案可以通过额外的支持信息得到改进。请编辑以添加更多详细信息,例如引文或文档,以便其他人可以确认您的答案是正确的。您可以在帮助中心找到有关如何写出好答案的更多信息。
0赞 Kalnode 11/10/2023 #3

看看CSS flexboxgrid,它会缓解一些事情。

你经常使用经典,但是,如果你只是使用更现代的,你可以通过一些简单的规则来获得定位、包装和居中,而无需媒体查询。或者,您也可以使用它来提供此功能,可以更好地控制项目之间的间距,但没有自动包装功能,因此您需要媒体查询。floatflexboxgrid

首先,在包装器中,删除并使用:ulfloatdisplay:flex

#epkb-main-page-container.epkb-tabs-template #epkb-content-container ul {
    display: flex; /* By default items will be horizontally oriented */
    flex-wrap: wrap; /* This will automatically stack your items vertically when then items run out of width. If you're picky, you can control this in media queries too. */

    --myGapVariable: 2rem; /* set a gap value we can re-use in other places */
    gap: var(--myGapVariable); /* adds a gap between your items, whether you use flex or grid */
}

其次,在课堂上,去掉和;使用及其居中规则:lifloatdisplay:blockflex

#epkb-main-page-container.epkb-tabs-template .epkb-nav-tabs li {
    display: flex;
    align-items: center;
    justify-content: center;
}

同样,我不知道你为什么有这个,但要么消除它,要么做这个(并且应该在它前面有一个空格):display: flex!important

#epkb-main-page-container.epkb-tabs-template .active {
    /*display: block !important; */
    display: flex !important;
}

此外,我们将宽度设置为 50%,但小于间隙值的一半。注意:如果在以下位置使用(而不是)方法,则不需要此技巧:gridflexul

#epkb-main-page-container.epkb-tabs-template .col-2 {
    width: calc(50% - (var(--myGapVariable) / 2));
}

第三,对于标签内容,我认为在这一点上禁用并查看您的立场;这可能是不必要的。无论如何,在这里使用百分比和/或有一堆 1% 是很奇怪的;你是在轻推像素吗?你不应该这样做,假设更高层次的事情是正确的。padding

#epkb-main-page-container.epkb-tabs-template .epkb-nav-tabs li .epkb-category-level-1 {
    /* Disable padding for now until you've smoothed out higher-level stuff; do you even need it? */
    /* padding: 4% 1% 1% 1%; */
}