тело и (*) свойства в CSS - PullRequest
0 голосов
/ 26 июня 2010

это body свойства и * свойства имеют разные?

я всегда использую свойства body и html одинаковые. Могу ли я использовать * свойства с body и html? а чем должны отличаться свойства * и body? я не могу понять, что это необходимо, чтобы использовать эти оба свойства?

Если я использую один из них, чем это создает какие-либо проблемы?

Я использую это

*{
    margin:0;
    padding:0;
    background:#FFF;
}

и в теле

body, html{
    margin:0;
    padding:0;
    background:#FFF;
    font:normal 12px verdana;
    color:#0086ca;
}

когда я связываю текст, он берет фон. и когда я удаляю фон из *, это не принимает bg color.

Ответы [ 3 ]

3 голосов
/ 26 июня 2010

* (Звездочка) - это подстановочный знак, это означает, что он будет выбирать все элементы в этой части DOM. Это универсальное правило, которое влияет на каждый элемент. например:

Поля для каждого элемента на странице

* {
    margin: 10px;
}

Все HTML-компоненты будут иметь эти атрибуты.

Тело влияет только на тег body ... Элементы в теге не затрагиваются - (они не получают одинаковые атрибуты.)

2 голосов
/ 26 июня 2010

Использование * в CSS соответствует любому элементу. Использование одного это редко полезно, потому что вы будете нацеливаться на каждый элемент на странице.

Если у вас есть HTML-код, подобный этому:

<html>
<head>
  <title></title>
  <style>
  body { font-size: 50px; }
  </style>
</head>
<body>
  <div>
    <form>
      Name: <input type="text"/>
    </form>
  </div>
</body>
</html>

Размер шрифта, установленный для тела, повлияет на текст «Имя:», но не повлияет на размер шрифта элемента ввода, так как для него задан определенный размер по умолчанию.

Если вы сейчас добавите стиль * { border: 10px solid red; font-size: 100px; }, это поместит границу в элементы body, div, form и input, и текст, и элемент input получат размер шрифта.

Селектор * более полезен в сочетании с другими селекторами, например, выбирает любой дочерний элемент для определенного элемента:

#Menu > * { float: left; }

Относительно того, что использовать для элементов html и body, вам нужно только установить поле, отступ и фон для элемента body.

2 голосов
/ 26 июня 2010

body применяется к тегу <body>, а * применяется к каждому тегу . Пример разницы можно увидеть в следующем:

body { margin: 2cm; }

против

* { margin: 2cm; }

Первый дает тело запаса, второй дает каждый элемент поля.

С другой стороны, следующий код:

body { font-family: Courier; }

изменит семейство шрифтов во всем документе, поскольку CSS использует каскадные стили, то есть вложенные теги наследуют определенные свойства стиля от своих родителей - в данном случае, шрифта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...