- webkit-margin добавляет нежелательные поля на текстах
Это не ударило меня до сих пор (и это не только в браузерах webkit). На все тексты, как p
теги h1
теги и т. д... есть дополнительное пространство над и под текстом.
в chrome я нашел это:
таблица стилей агента пользователя
-webkit-margin-before: 1em;
-webkit-margin-after: 1em;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
это делает выравнивание неправильным в некоторых местах. И да, я использую таблицу стилей сброса, и никакие отступы или поля не добавляются. В значительной степени базовая настройка. Почему это и как мне решить это?
11 ответов:
вы также можете напрямую изменить эти атрибуты следующим образом:
-webkit-margin-before:0em; -webkit-margin-after:0em;
работает для меня в Chrome / Safari. Надеюсь, это поможет!
эти
-webkit-margin
(s) перезаписываютсяmargin: 0; padding: 0;
. Не беспокойтесь о них.дополнительное пространство? Может быть, вы установили
line-height:
?
У меня была та же проблема. Отображение правильно в Firefox, но не Chrome.
я присмотрелся к http://meyerweb.com/eric/tools/css/reset/ и обнаружил, что я не объявил общую высоту линии для тега body в моей таблице стилей. Установите его в 1.2, и это воссоздало правильный макет в обоих браузерах.
просто убрать пробелы между тегами, например,
<p id="one"></p> <p id="two"></p>
будет:
<p id="one"></p><p id="two"></p>
у меня была такая же проблема. Дополнительное пространство между ссылками меню. Ни одно из вышеперечисленных решений не сработало. То, что сработало для меня, было отрицательной маржей. Просто сделайте что-то вроде этого:
margin: 0 -2px;
НОВОЕ РЕДАКТИРОВАНИЕ:
Это не имеет ничего общего с-webkit-полями. Скорее всего, проблема возникает с встроенными элементами. Это происходит потому, что у вас есть пробелы или разрывы строк между инлайн элементами. Чтобы исправить это, у вас есть много вариантов:
- удалить все пробелы и разрывы строк между встроенными элементами
- пропустить тег закрытия элемента-например
</li>
(HTML5 не волнует)- отрицательная маржа (как указано выше-проблемы с IE6 / 7-кто заботится, обновление ;)
- set
font-size: 0;
к проблемному контейнеру встроенных элементов (имеет проблемы с android и если размер шрифта с ems)- откажитесь от встроенного и используйте float (таким образом, Вы потеряете текст-выровняйте:центр)
у меня была такая же проблема с моим
<h3>
тег. Я попробовал установитьmargin:0;
, но это не сработало.я обнаружил, что я обычно комментировал строки в моем css с помощью
//
. Я никогда не замечал этого, потому что раньше это не вызывало никаких проблем. Но когда я использовал//
в строке перед объявлением<h3>
, Это заставило браузер полностью пропустить объявление. Когда я торговал//
на/**/
я смог настроить маржу.мораль этой история: всегда используйте правильный синтаксис комментариев!
для меня картина была такая:
* {margin:0;padding:0;}
Firefox (FF) и Google Chrome оба ставят 0.67 em поля независимо. FF показал свою маржу по умолчанию, но вычеркнул, но все равно применил ее. GC показал свою маржу по умолчанию (- webkit-margin-before...) распрямленный.
Я подал заявление
* {margin:0;padding:0; -webkit-margin-before: 0; -webkit-margin-after: 0;}
но безрезультатно, хотя GC теперь показал, что его маржа по умолчанию пересечена.
я узнал, что могу подать заявку либо
line-height: 0;
или
font-size: 0;
для достижения желаемого эффекта. Это имеет смысл, если предположить, что маржа имеет .67ем-типа. Если бы кто-нибудь мог дать объяснение, почему браузеры делают нашу жизнь несчастной, применяя зависящую от высоты линии, несъемную маржу, я был бы очень благодарен.
для меня в Chrome это было около 40px
padding-start
что было причиной этого. Я сделал следующее, что сработало:ul { -webkit-padding-start: 0em; }
-webkit-margin-before: 0em; -webkit-padding-start: 0; -webkit-margin-after: 0em;
это решило его для меня, когда у меня была эта точная проблема.
У меня была та же проблема. Внезапно одна из моих трех ячеек таблицы, содержащих данные, ее заголовок был немного сдвинут вниз. Моя проблема была просто решена путем добавления этого:
table td { vertical-align: top; }
похоже, что какой-то другой элемент в таблице стилей "выше" говорил моим данным центрироваться в ячейке, а не просто оставаться на вершине.
Я думаю, это просто глупо, и не было действительно проблемой... но у следующего человека, который прочитает эту тему, может быть такая же глупая ошибка, как и у меня :)
береги!
Если
user agent stylesheet
срабатывает, это потому, что свойство tag не было правильно определено в вашей таблице стилей css.скорее всего, опечатка, забытая скобка или точка с запятой разбивает вашу таблицу стилей до достижения настроек свойств тега, на которые позже ссылается ваша страница или "потребности".
запустите CSS через проверку ошибок, например CSS LINT и исправить любые ошибки в конечном итоге обнаружены.