Использует ли отрицательную маржу с кнопками (счетчиками) социального обмена Хорошо?

#html #css #margin

#HTML #css #Маржа

Вопрос:

Я создал JSFiddle моего случая здесь: http://jsfiddle.net/gGCaX / (Пожалуйста, взгляните, чтобы получить некоторое представление о том, о чем я собираюсь спросить.)

Теперь, переходя к сути, кнопки или счетчики для обмена в социальных сетях нерегулярны, когда дело доходит до заполнения, полей и т. Д., Поскольку Они исходят от разных людей.

Как вы можете видеть в JSFIDDLE, мне удалось заставить их хорошо смотреться вместе. Но проблема в том, что для одной из кнопок (кнопка «ПОДЕЛИТЬСЯ» — последняя в строке) Мне пришлось использовать «отрицательное» поле, поскольку оно оставляло много места позади (т. Е. Слева от него).

 .sharethisx {
    float: left;
    margin: 0 0 0 -10px !important;
    padding: 2px 0 0 !important;
    display: inline;
}
  

Смотрите поле: 0 0 0 -10px !важно; ?? Я бы не беспокоился, если бы речь шла только о видимости. Но это счетчики, и они могут вырасти до любого числа. Итак, будет ли это нормально в этом случае? Пожалуйста, сообщите.

Ответ №1:

В вашем случае все будет в порядке, поскольку вы применили отрицательное левое поле к элементу, который перемещается влево. В этом случае (а также для статических элементов), как вы видите, элемент будет вытягиваться влево.

Вы начинаете сталкиваться с неожиданным поведением с отрицательными полями, когда вы:

  1. Примените их к нижней части элемента (подтягивает нижние элементы вверх).

  2. Примените их справа от элемента (перемещает следующий элемент влево по направлению к элементу).

  3. Примените их в направлении, противоположном направлению с плавающей точкой (создает пустоту, которая позволяет содержимому перекрывать элемент). Если размер отрицательного поля равен> = ширине элемента, элемент полностью перекрывается.

Вот статья, в которой дается хорошее описание того, как отрицательная маржа будет работать в разных ситуациях.

Комментарии:

1. Спасибо, Пэт, это определенно развеяло мои сомнения. И, пожалуйста, не могли бы вы взглянуть на код в СКРИПКЕ и предложить изменения, если таковые имеются? (улучшенная перспектива кодирования) — Например, он сломан в IE6 — проблемы с плавающей точкой.

Ответ №2:

Никаких проблем, отрицательная маржа не допускается

Как указано в w3c: http://www.w3schools.com/cssref/pr_margin.asp Прочтите примечание «допускается отрицательная маржа».

Удачи

Комментарии:

1. Что происходит, когда счетчик Google 1 растет? скажите «1827» голосов. Пространство все равно будет сохраняться, верно?

2. @badlearner Да, смотрите Мой ответ о том, как отрицательный запас будет взаимодействовать с другими элементами в разных условиях.