jquery 使用 inline-block 时显示/隐藏

标签 jquery

我有一些如下所示的 HTML 和 CSS:

<div id="TheContainer">
<div class="MyDivs"></div>
<div class="MyDivs" id="ThisDiv"></div>
</div>

#TheContainer{text-align:center;}
.MyDivs{margin:0px auto;display:inline-block;}
#ThisDiv{display:none;}

我使用 inline-block 和 margin:0px auto ,以便 MyDivsTheContainer 内居中。问题是当我这样做时:

$('#TheContainer').children().hide();
$('#ThisDiv').show();

然后 ThisDiv 不再居中,因为显示从无更改为 block ,而不是像我在 CSS 定义中那样的内联 block 。

我知道我可以写 .css('display','none').css('display','inline-block') 但我是想知道是否有办法通过保留 .show()

来完成这项工作

感谢您的建议。

最佳答案

您可以对 jQuery 进行扩展...

$.fn.showInlineBlock = function () {
    return this.css('display', 'inline-block');
};

用法是:

$('#whatever').showInlineBlock();

jsFiddle Demo

关于jquery 使用 inline-block 时显示/隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12285665/

相关文章:

javascript - 如何使用 JQuery 过滤 JSON 对象并创建新对象?

javascript - jquery editInPlace anchor 文本编辑

jquery - 如何从 JSON 中提取 1 个 'column' 属性

javascript - 为什么 mousedown 不能在 <html> 标签上工作?

jquery - iPad 表单禁用 [上一个 |下一步]按钮

javascript - 逐渐滚动 mousedown 直到 mouseup

php - AJAX 如何获取返回值和数据库连接

javascript - Backbone.js 再次渲染 View 还是重新创建?

javascript - Rails 上的 js 连接遇到困难

jquery - 将 jQuery 点击目标记录为字符串以便存储和重用