css - 我应该使用哪些 CSS 选择器来设计我的 JSP。 ID 还是类?

标签 css web-services jsp coding-style css-selectors

我想知道的基本问题是在可读性、重用性、编码风格等方面首选什么。需要注意的一件事是这个 JSP 可以在页面的多个部分使用,对于这个天真的例子让说它只是一个 div,需要以某种方式设置样式并多次放在页面上。

我知道我可以将该类外化到一个共享的 CSS 文件中,但是这个类只会被页面的这一部分使用,例如,这个框是整个页面中唯一需要为紫色的框产品,在我看来,为了清理我的 JSP 而弄脏共享的 CSS 是没有意义的。那么什么更好

选项 1(使用 ID 选择器)

<% String contextName = request.getParameter("myContext"); %>

<style type="text/css">
    #<%=contextName %>_myDiv
    {
        font-weight: bold;
        background-color: purple;
        height: 20px;
    }
</style>

<div id="<%=contextName %>_myDiv">
    <div>Blah Blah Blah!</div>
</div>

选项 2(使用类选择器)

<% String contextName = request.getParameter("myContext"); %>

<style type="text/css">
    .<%=contextName %>_myDiv
    {
        font-weight: bold;
        background-color: purple;
        height: 20px;
    }
</style>

<div class="<%=contextName %>_myDiv">
    <div>Blah Blah Blah!</div>
</div>

在我看来,选项 2 会使事情更容易调试,因为它们使用的是共享类,但是如果页面上有(例如)50 个这样的框,那么它将导致此类被声明 50 次.这是否会给浏览器带来额外的腿部工作。或者,如果我使用 ID 选择器方法,那么我会创建 50 个独特的样式,它们执行完全相同的操作,从而导致浏览器需要额外工作才能匹配所有 ID。

那什么更好呢?注意:这两种方法都有效,我只是在寻找每种方法的优缺点。

最佳答案

body 中无论如何都不应该有style 元素,因此您应该将样式放在样式表中。由于 id 在页面中应该是唯一的,因此您可以使用类。

如果您不想这样做,那么也没有理由使用 style 标签。只需将样式放在元素中即可:

<div style="font-weight:bold;background-color:purple;height:20px;">
  <div>Blah Blah Blah!</div>
</div>

关于css - 我应该使用哪些 CSS 选择器来设计我的 JSP。 ID 还是类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13501393/

相关文章:

html - 如何让css中的文字出现在垂直中间

css - 带有 Twitter Bootstrap 的全宽布局

java - JAX-RS 中方法类型的最佳实践

javascript - 如何在多个页面中显示从数据库中获取的行?

java - 从 Eclipse 运行 web.xml 导致 HTTP 状态 404

javascript - Laravel 5.1 - 自定义按钮 STRIPE 支付

javascript - CSS - 滚动到 id 但需要在 id 上方显示 h3 元素

PHP Nusoap session

java - 为什么 Java 客户端在运行时需要 WSDL?

forms - 从 Bootstrap 3 提交表单和 JSP 获取参数