2015-12-17 3 views
-1

Так я пытаюсь изменить запас моих h1 заголовка в следующем фрагменте коды, используя JavaScript для точности и потому, что CSS не поддерживает auto свойства для h1margin. Для этого я добавляю маржу, используя объект document.. Я хотел бы использовать более продвинутую JavaScript, чтобы разделить ширину окна пополам и расположите h1 заголовок там, однако, если такой простой код, как это:CSS стиля с JavaScript вопросы

document.getElementsByTagName("h1")[0].style.marginLeft = "500px"; 

не работает, то какой смысл? Может ли кто-нибудь объяснить мне, почему это не работает, и дать мне подходящее решение этой проблемы? Заранее спасибо.

UPDATE

кажется, что код решает работать, когда она вызывается в функции, но не тогда, когда он вышел на свой собственный. Любая помощь, почему?

+0

Моя первая мысль - сделать 'h1 {display: inline-block; margin: auto} ', но если вы хотите центрировать его, просто сделайте' text-align: center' – inorganik

+0

оберните '500px' в кавычки в примере JS. – Marc

+0

А, я сделал text-align: center, и он достиг результатов, которые я хотел. Я считал, что это не сработало, но оказалось, что я совершил самую глупую ошибку в написании «центра» неправильно. Несмотря на это, я все еще не понимаю, почему приведенный выше пример JavaScript не работает. По сути, кажется, что никакая редактировка стиля с JavaScript не работает по какой-то причине, и я не вижу никаких синтаксических ошибок в своей работе. –

ответ

2

Вы должны поставить 500px измерения в кавычках, как это:

document.getElementById("qwert").style.marginLeft = "500px"; 

Если вы объясните вашу большую проблему, может быть, что это может быть решена полностью с помощью CSS тоже, и не должны использовать JS для него ,


Теперь, когда вы полностью изменили то, что вы спрашиваете в вашем вопросе (которые вы не должны делать здесь), я постараюсь решить новый вопрос вы просите.

Если код работает только при вызове функции, вы либо имеете синтаксическую ошибку, либо временную ошибку. Я предполагаю, что когда код не находится в функции, вы выполняете его слишком рано, прежде чем элементы DOM будут проанализированы и присутствуют.

+0

Моя большая проблема заключается в том, что я хочу центрировать тег h1. Я попробовал выше, но еще раз, это не сработало. Я мог бы связать весь код, если это необходимо? –

+0

@HuzaifahFarooq - Я не знаю, какой CSS-контекст может иметь ваш документ, но в простом документе это все CSS, который требуется для центра текста в теге h1: 'h1 {text-align: center;}'. См. Демонстрацию [здесь] (https://jsfiddle.net/jfriend00/c5vwm59L/). – jfriend00

+0

@HuzaifahFarooq - Мы, вероятно, не хотим видеть весь ваш код. Этот сайт просит вас решить проблему до наименьшего количества кода, необходимого для воспроизведения или иллюстрации вашей проблемы, и затем вставить этот код в ваш вопрос. Вы можете включить ссылку на свой полный сайт, но это не должно быть единственной ссылкой на соответствующий код. – jfriend00

Смежные вопросы