Попробуйте следующее css:
img {
border: 0px;
margin: auto auto;
}
Проблема будет в ваших отрицательных полях, именно они заставляют изображение выталкивать влево из поля зрения. Если вы используете margin: auto auto
, он должен центрировать изображение для вас, и вам не придется использовать абсолютное позиционирование с процентами.
Редактировать: только что проверил мой метод, и он не работал как задумано. То, что вы можете сделать тогда (если вы не возражаете против использования div), это обернуть изображение в div. Сделайте div размером с изображение, тогда margin: auto auto;
будет работать правильно.
Edit2: Кредиты Senthil за то, что они указали, что если вы установите свойство display для изображения на block, вам не нужно будет оборачивать изображение в div для его центрирования Тем не менее, auto не работает для центрирования div по вертикали, если требуется центрирование, вы можете использовать процент (хотя я не уверен, что это может вызвать проблемы с разными разрешениями).
img {
border: 0px;
margin: auto;
display: block;
}