代码之家  ›  专栏  ›  技术社区  ›  thoni56

作为CSS选择器,.class name意味着什么?

  •  3
  • thoni56  · 技术社区  · 14 年前

    那么,如果我有一个CSS类名为“class name”,下面是什么意思?

    .class-name {
      margin: 0;
    }
    

    为什么,如果我有下面的HTML

    <div id="some-id">
        <ul>
            <li class="class-name">
        ...
    

    你会选择吗

    #some-id .class-name ul li
    

    不存在?

    8 回复  |  直到 14 年前
        1
  •  4
  •   zombat    14 年前

    第一个表示您可能认为它的意思:类中的任何HTML元素 class-name 边距为0(每边,即顶部、底部、左侧和右侧)。

    第二个问题有点微妙。此选择器

    #some-id .class-name ul li
    

    仅适用于 li ul ,在类为的元素下找到 类名 some-id .

    必须使用这样的选择器才能应用于上面的HTML:

    #some-id ul li.class-name
    

    请注意,中间没有空格 .class-name 在那个选择器里。指定 li.class-name 具有 类名 类名 “,鉴于 li .class-name 类名 建立 在......下面 ".

        2
  •  6
  •   James Curran    14 年前

    .class_name 表示选择具有该类的元素。

    #some-id .class-name ul li 意思是“在名为'some id'的元素的内部html中,选择ul元素中的li元素,ul元素中的li元素,ul元素中的li元素是类为'class\u name'的元素”

        3
  •  3
  •   meder omuraliev    14 年前
    #some-id ul li.class-name 
    

    prob是你需要的。。

    #some-id .class-name ul li
    

    目标为#some id下类名的ul后代的li后代

        4
  •  2
  •   ScottS    14 年前

    因为 class-name 是在 li .

    澄清:

    <div id="some-id">
       <div class="class-name">
         <ul>
           <li>
    

    将匹配您提到的选择器字符串。

        5
  •  2
  •   Chuck    14 年前

    .class-name 指定具有类的元素 class-name . 选择器 #some-id .class-name ul li 指定一个 li ul 这是类中某个元素的后代 那是我的后代 #some-id . 指定具有类的特定类型的元素 ,你会的 tag.class-name div.author-credit .

        6
  •  1
  •   Jason McCreary    14 年前

    ul li 在具有 .class-name . 您的HTML结构与以下选择器匹配

    #some-id ul li.class-name
    
        7
  •  1
  •   heisenberg    14 年前

    您的选择器出了问题,要选择属于“类名”类的li,将是:

    #some-id ul li.class-name  
    
        8
  •  0
  •   Texx Smith    11 年前

    在大多数情况下只需跳过使用选择器。它使css更易于编写和使用。也是你的程序员。是的,你可以用它们来应用CSS,但是ID的类是让脚本找到元素并替换它们,或者其他程序从中检索信息等等。