— HTML | MDN
HTML-элемент <img>
встраивает изображение в документ. Это замещаемый элемент.
Приведённый выше пример показывает очень простое использование элемента <img>
. Атрибут src
обязателен и содержит путь к изображению, которое вы хотите встроить в документ. Атрибут alt
содержит текстовое описание изображения, которое не обязательно, но невероятно полезно для доступности — программы чтения с экрана читают это описание своим пользователям, так они знают какое изображение показано, и так же оно отображается на странице, если изображение не может быть загружено по какой-либо причине.
Есть много других атрибутов, которые могут быть указаны для достижения различных целей, например:
- управление Referrer/CORS в целях безопасности. Смотрите ниже атрибуты
crossorigin
иreferrerpolicy
; - настройка внутреннего размера (en-US) с использованием
иheight
, которые полезны, когда вы хотите задать пространство занимаемое изображением, чтобы обеспечить стабильность макета страницы перед его загрузкой; - адаптивные изображения рекомендуется использовать с атрибутами
sizes
иsrcset
(смотрите также элемент<picture>
и наше руководство «Адаптивные изображения»).
Категории контента | Потоковый контент, фразовый контент, встроенный контент, явный контент. Если элемент имеет атрибут usemap , он так же принадлежит к категории интерактивного контента. |
---|---|
Допустимое содержимое | Никакое, так как это пустой элемент. |
Пропуск тегов | Должен иметь открывающий тег и не должен иметь закрывающий. |
Допустимые родители | Любой элемент, который разрешает встроенный контент в качестве содержимого. |
Допустимые ARIA-роли | Любые |
DOM-интерфейс | HTMLImageElement |
Стандарт HTML не содержит списка форматов изображений, которые должны поддерживаться. Поэтому разные пользовательские агенты поддерживают разные наборы форматов.
Firefox
Форматы изображений, поддерживаемые Firefox:
- JPEG;
- GIF, включая анимированные GIF;
- PNG;
- APNG;
- SVG;
- BMP;
- BMP ICO;
- PNG ICO.
Если ошибка происходит во время загрузки или отрисовки изображения и обработчик события onerror
был настроен на обработку события error (en-US)
, тогда этот обработчик события будет вызван. Это может произойти в ряде ситуаций, в том числе когда:
- атрибут
src
пустой или null; - указанный URL в атрибуте
src
совпадает с URL страницы, на которой в данный момент находится пользователь; - указанное изображение каким-то образом повреждено, что препятствует его загрузке;
- метаданные указанного изображения повреждены таким образом, что невозможно получить его размеры, и в атрибутах элемента
<img>
не было указано никаких размеров; - указанное изображение имеет формат, который не поддерживается пользовательским агентом.
К этому элементу применимы глобальные атрибуты.
alt
Этим атрибутом задаётся альтернативное текстовое описание изображения.
Примечание: Браузеры не всегда отображают изображение на которое ссылается элемент. Это относится к неграфическим браузерам (включая те, которые используются людьми с нарушениями зрения), если пользователь решает не отображать изображения, или если браузер не может отобразить изображение, потому что оно имеет неверный или неподдерживаемый тип. В этих случаях браузер может заменить изображение текстом записанным в атрибуте
alt
элемента. По этим и другим причинам вы должны по возможности предоставлять полезное описание в атрибутеalt
. Примечание: Пропуск этого атрибута в целом указывает, что изображение является ключевой частью контента и текстовый эквивалент не доступен. Установка этого атрибута в значение пустой строки (alt=""
) указывает, что это изображение не является ключевой частью контента (декоративное), и что невизуальные браузеры могут пропустить его при рендеринге (en-US).crossorigin
Этот атрибут указывает, следует ли использовать CORS при загрузке изображения или нет. Изображения с включённой поддержкой CORS могут быть повторно использованы в элементе
<canvas>
не будучи «испорченными». Допустимые значения:anonymous
: Запрос cross-origin (т.е. с HTTP-заголовкомOrigin
) выполняется, но параметры доступа не передаются (т.е. нет cookie, не используется стандарт X.509 или базовая HTTP-аутентификация). Если сервер не предоставляет параметры доступа исходному сайту (не устанавливая HTTP-заголовокAccess-Control-Allow-Origin
), изображение будет «испорчено» и его использование будет ограничено;use-credentials
: Запрос cross-origin (т.е. с HTTP-заголовкомOrigin
) выполняется вместе с передачей параметров доступа (т.е. есть cookie, используется стандарт X.509 или базовая HTTP-аутентификация). Если сервер не предоставляет параметры доступа исходному сайту (посредством HTTP-заголовкаAccess-Control-Allow-Origin
), изображение будет «испорчено» и его использование будет ограничено.Если этот атрибут не задан, то CORS при загрузке изображения не используется (т.е. без отправки HTTP-заголовкаOrigin
), ограничивая его использование в элементе<canvas>
. Если задан неправильно, то он обрабатывается так, как если бы использовалось значениеanonymous
. Для получения дополнительной информации смотрите «Настройки атрибутов CORS».
decoding
Предоставляет рекомендации браузеру по декодированию изображения. Допустимые значения:
sync
: Декодировать изображение синхронно для одновременного отображения с другим контентом;async
: Декодировать изображение асинхронно, чтобы уменьшить задержку отображения другого контента;auto
: Режим по умолчанию, который указывает на отсутствие предпочтений к режиму декодирования. Браузер решает, что лучше для пользователя.
height
Внутренняя высота (см. Внутренний размер (en-US)) изображения в пикселях.
importance
Экспериментальная возможностьУказывает сравнительную важность ресурса. Приоритет выбирается с помощью значений:
auto
: Указывает на отсутствие предпочтений. Браузер может использовать собственную эвристику для определения приоритета изображения;high
: Указывает браузеру, что изображение имеет высокий приоритет;low
: Указывает браузеру, что изображение имеет низкий приоритет.
intrinsicsize
Экспериментальная возможностьЭтот атрибут говорит браузеру игнорировать действительный внутренний размер (en-US) изображения и делать вид, что это размер, указанный в атрибуте. В частности, изображение будет растровым в этих измерениях, а
narutalWidth
/naturalHeight
изображения будут возвращать значения, указанные в этом атрибуте. Объяснение, примеры.ismap
Это атрибут логического типа, указывающий, что изображение является частью серверной карты ссылок. Если это так, то точные координаты клика отправляются на сервер.
Примечание: Этот атрибут разрешён, только если элемент
<img>
является потомком элемента<a>
с валидным (соответствующий требованиям) атрибутомhref
.loading
Экспериментальная возможностьУказывает на то, как браузер должен загрузить изображение:
eager
: Загружает изображение немедленно независимо от того, находится оно в области просмотра или нет (является значением по умолчанию).-
lazy
: Откладывает загрузку изображения до того момента, пока оно не достигнет подсчитанного расстояния области просмотра, определяемого браузером. Данное значение помогает избежать использования ресурсов сети и хранилища, необходимых для обработки изображения, пока это действительно не понадобится. В большинстве случаев использование этого аргумента улучшает производительность.Примечание: Загрузка откладывается только тогда, когда включён JavaScript. Это анти-трэкинг мера. Если бы пользовательский клиент поддерживал опцию отложенной загрузки изображения при отключённом JavaScript, то сайт имел бы возможность отслеживать приблизительную позицию области просмотра в течение сессии пользователя, размещая изображения на странице таким образом, чтобы сервер мог отслеживать, сколько изображений загружено и когда.
referrerpolicy
Строка, указывающая, какой реферер (referrer) использовать при выборке ресурсов:
no-referrer
: ЗаголовокReferer
не будет отправлен;no-referrer-when-downgrade
: ЗаголовокReferer
не отправляется, когда происходит переход к источнику без TLS (HTTPS). Это поведение по умолчанию для пользовательских агентов, если не указано иное;origin
: ЗаголовокReferer
будет содержать схему адресации ресурса (HTTP, HTTPS, FTP и т.д), хост и порт;origin-when-cross-origin
: Переход на другие источники ограничит включённые реферальные данные схемой адресации ресурса, хостом и портом, в то время как переход из того же источника будет включать полный путь реферала;unsafe-url
: ЗаголовокReferer
будет включать источник и путь, но не фрагмент URL, пароль или имя пользователя. Этот метод небезопасен, потому что будет утечка источников и путей от ресурсов, защищённых TLS, к незащищённым источникам.
sizes
Список из одного или нескольких строк, разделённых запятыми, указывающих набор размеров источника. Каждый размер источника состоит из:1. Условия медиа-запроса. Должно быть пропущено для последнего элемента. 2. Значения размера источника.Значения размера источника устанавливаются исходя из предполагаемых размеров изображения. Пользовательские агенты используют текущий размер источника, чтобы выбрать один из источников, предоставленных атрибутом
srcset
, если эти источники описываются с помощью дескриптора ширины ‘w
‘ (сокращение от width). Выбранный размер источника влияет на внутренний размер (en-US) изображения (отображаемый размер изображения, если не применены стили CSS). Если атрибутsrcset
отсутствует или не содержит значений с дескриптором ‘w
‘, то атрибутsizes
не будет иметь никакого эффекта.src
URL изображения. Этот атрибут является обязательным для элемента
<img>
. В браузерах, поддерживающихsrcset
,src
обрабатывается как изображение-кандидат с дескриптором плотности пикселей1x
, если только изображение с этим дескриптором уже не определено вsrcset
или еслиsrcset
не содержит дескрипторы ‘w
‘.srcset
Список из одной или нескольких строк, разделённых запятыми, указывающих набор возможным источников изображения для использования пользовательскими агентами. Каждая строка состоит из:1. URL изображения. 2. Необязательного, пробела, сопровождаемого:
- дескриптором ширины или положительным целым числом, за которым сразу же следует ‘
w
‘. Дескриптор ширины делится на размер источника, полученный из атрибутаsizes
, для расчёта эффективной плотности пикселей; - дескриптором плотности пикселей, который является положительным числом с плавающей точкой за которым сразу же следует ‘
x
‘.Если не указано ни одного дескриптора, то источнику присваивается дескриптор по умолчанию:1x
.Нельзя смешивать дескрипторы ширины с дескрипторами плотности пикселей в одном атрибутеsrcset
. Повторение дескрипторов (например, два источника в одномsrcset
с одинаковым дескриптором ‘2x
‘) так же является недопустимым. Пользовательские агенты выбирают любой из доступных источников на своё усмотрение. Это предоставляет им значительную свободу действий для адаптации их выбора на основе таких вещей, как предпочтения пользователя или пропускная способность. Смотрите наше руководство «Адаптивные изображения» для примера.
- дескриптором ширины или положительным целым числом, за которым сразу же следует ‘
width
Внутренняя ширина (см. Внутренний размер (en-US)) изображения в пикселях.
usemap
Неполный URL (начиная с ‘
#
‘) карты-изображения, связанной с элементом.Примечание: вы не можете использовать этот атрибут, если элемент
<img>
является потомком элемента<a>
или<button>
.
Устаревшие атрибуты
align
Выравнивание изображения относительно окружающему его контексту. Этот атрибут больше не должен быть использован — вместо этого используйте CSS-свойства
float
и/илиvertical-align
. Вы можете так же использовать CSS-свойствоobject-position
для позиционирования изображения внутри границ элемента<img>
. Допустимые значения:top
: Аналогvertical-align: top
илиvertical-align: text-top
;middle
: Аналогvertical-align: -moz-middle-with-baseline
;bottom
: Отсутствует значение по умолчанию, аналогvertical-align: unset
илиvertical-align: initial
;left
: Аналогfloat: left
;right
: Аналогfloat: right
.
border
Ширина рамки вокруг изображения. Вы должны использовать CSS-свойство
border
вместо этого атрибута.hspace
Отступ слева и справа от изображения в пикселях. Вы должны использовать CSS-свойство
margin
вместо этого атрибута.longdesc
Ссылка на более подробное описание изображения. Возможными значениями являются URL или
id
элемента.Примечание: Этот атрибут упомянут в последней версии от W3C, HTML 5.2, но был удалён из живого стандарта HTML от WHATWG. У него неопределённое будущее; авторы должны использовать альтернативы WAI-ARIA, такие как aria-describedby или aria-details.
name
Имя для элемента. Вы должны использовать атрибут
id
вместо этого атрибута.vspace
Отступ сверху и снизу от изображения в пикселях. Вы должны использовать CSS-свойство
margin
вместо этого атрибута.
<img>
является замещаемым элементом; по умолчанию он имеет значение свойства display
равное inline
, но его размеры по умолчанию определяются внутренними значениями (см. внутренний размер (en-US)) встроенного изображения. Вы можете установить на изображение такие свойства, как border
/border-radius
, padding
/margin
, width
/height
и так далее.
Однако, часто бывает полезно установить для изображений свойство display
в значение block
, так что вы имеете максимальный контроль над стилизацией (например, margin: 0 auto
не работает на изображениях с display: inline
, легче размещать изображения в контексте с окружающими элементами, когда они являются блочными).
У <img>
нет базовой линии, когда изображения используются в ситуации со строчным форматированием (display: inline
) вместе с vertical-align
: baseline
, нижняя граница изображения будет размещена на базовой линии контейнера.
Вы можете использовать свойство object-position
для позиционирования изображения внутри границ элемента <img>
и свойством object-fit
регулировать размеры изображения внутри этих границ (например, должно ли изображение помещаться в границы элемента или заполнить элемент полностью, даже если потребуется обрезка).
В зависимости от типа, изображение может иметь собственную (внутреннюю) ширину и высоту. Для некоторых типов изображений тем не менее внутренние размеры (en-US) не обязательны. SVG-изображения, например, могут не иметь внутренних размеров, если для корня их элемента <svg>
не заданы width
и height
.
Альтернативный текст
Следующий простой пример встраивает изображение с альтернативным текстом в страницу для улучшения доступности.
<img src="https://developer.mozilla.org/static/img/web-docs-sprite.22a6a085cf14.svg" alt="Логотип MDN - изображение динозавра с текстом MDN web docs">
Изображение-ссылка
Этот пример основан на предыдущем и показывает как превратить изображение в ссылку. Это очень просто сделать так — вы вставляете тег <img>
внутрь элемента <a>
. Также вы должны изменить альтернативный текст, чтобы он описывал назначение ссылки.
<a href="https://developer. mozilla.org"> <img src="https://developer.mozilla.org/static/img/web-docs-sprite.22a6a085cf14.svg" alt="Посетить сайт MDN"> </a>
Использование атрибута srcset
В этом примере мы добавляем атрибут srcset
, содержащий ссылку на версию логотипа в высоком разрешении; оно будет загружено вместо изображения в src
на устройствах с высоким разрешением. Изображение указанное в атрибуте src
, считается 1x
кандидатом в пользовательских агентах, которые поддерживают srcset
.
<img src="mdn-logo-sm.png" alt="MDN" srcset="mdn-logo-HD.png 2x">
Использование атрибутов srcset и sizes
Атрибут src
игнорируется в пользовательских агентах, которые поддерживают srcset
, когда добавлены дескрипторы ‘w
‘. Когда условие медиавыражения (max-width: 600px)
совпадает с состоянием устройства, будет загружено изображение шириной 200px (оно то самое, которое наиболее близко соответствует 200px, указанным в медиавыражении), иначе будет загружено другое изображение.
<img src="clock-demo-thumb-200.png" alt="Часы" srcset="clock-demo-thumb-200.png 200w, clock-demo-thumb-400.png 400w" >
Хотя у элементов <img>
есть множество безобидных применений, они могут иметь нежелательные последствия для безопасности и приватности пользователя. Смотрите «Заголовок Referer: проблемы приватности и безопасности (en-US)» для получения дополнительной информации.
Создание значимых альтернативных описаний
Значение атрибута alt
должно чётко и кратко описывать содержимое изображения. Он не должен описывать наличие самого изображения или название файла изображения. Если атрибут alt
намеренно пропущен, потому что изображение не имеет текстового эквивалента, рассмотрите альтернативные способы представления содержимого, которое изображение пытается передать.
Плохо
<img alt="image" src="penguin.jpg">
Хорошо
<img alt="Пингвин на пляже. " src="penguin.jpg">
Когда у изображения отсутствует атрибут alt
, некоторые программы чтения с экрана могут объявить вместо него имя файла изображения. Это может привести к путанице, если имя файла не соответствует содержимому изображения.
- Дерево решений атрибута alt • Изображения • Веб-руководство WAI по доступности.
- Альтернативные тексты: максимальное руководство — Axess Lab.
- Как создать отличный альтернативный текст: введение | Deque.
- MDN Понимание WCAG, Руководство 1.1. объяснения.
- Понимание критерия успешного исхода 1.1.1 | W3C Понимание WCAG 2.0.
Атрибут title
Атрибут title
не является приемлемой заменой атрибута alt
. Кроме того, избегайте повторения значения атрибута alt
в атрибуте title
, объявленном на том же изображении.
Атрибут title
также не должен использоваться в качестве подписи, сопровождающей альтернативное описание изображения. Если изображению нужна подпись, используйте элемент <figure>
вместе с элементом <figcaption>
.
- Использование HTML-атрибута title — обновлено | The Paciello Group.
Specification |
---|
HTML Standard # the-img-element |
BCD tables only load in the browser
with JavaScript enabled. Enable JavaScript to view data.- Изображения в HTML.
- Адаптивные изображения.
- Элементы
<picture>
,<object>
(en-US) и<embed>
. - Связанные с изображениями CSS-свойства:
object-fit
,object-position
,image-orientation
(en-US),image-rendering
(en-US), иimage-resolution
(en-US).
Found a content problem with this page?
- Edit the page on GitHub.
- Report the content issue.
- View the source on GitHub.
Want to get more involved?
Learn how to contribute.
This page was last modified on by MDN contributors.
Размеры и позиционирование изображений на веб-страницах
Вспомним, что для добавления файлов изображений на веб-страницу используется одиночный тег <img>
с атрибутами:
<img scr="адрес" alt="описание">
Атрибуты ширины и высоты можно опустить, если размер задается с помощью одноименных свойств CSS.
Если картинка больше ширины блока, в котором размещается, она будет выходить за пределы этого блока.
Однако ширину можно выражать в процентах. При этом она вычисляется от размера родительского блока. В таком случае изображение будет расширяться и сжиматься, подстраиваясь под разные экраны. При расширении потери качества не произойдет, так как реальный размер картинки все-равно больше.
<img src="linuxhistory.png" alt="История Linux" >
Значение auto
для height
заставляет высоту изображения масштабироваться пропорционально ширине.
То же самое через css-правило:
img { width: 100%; height: auto; } … <img src="linuxhistory.png" alt="История Linux">
Или встроенный в элемент стиль:
<img src="linuxhistory.png" alt="История Linux" >
Проблема возникает, когда картинка меньше ширины родительского блока на больших экранах, однако на малых – наоборот, не помещается в него. В таком случае если мы оставим размер изображения в пикселях, то все будет хорошо на условных мониторах, но плохо на условных смартфонах.
Если же выразим ширину в процентах, то решим проблему на мобильных устройствах. Однако на десктопах получим ухудшение качества изображения, так как оно растянется больше своего оригинального размера.
Наиболее простым способом решения проблемы является использование css-свойства max-width
со значением в процентах и с одновременным указанием размера изображения в пикселях в атрибутах элемента img
.
В этом случае max-width
растягивает картинку на всю ширину внешнего блока при условии, что размер этого блока не превышает размера изображения. Когда это не так, срабатывают значения атрибутов длины и ширины тега.
Ранее (см. урок 3), когда речь шла о блочных и строчных элементах, то для выравнивая отдельно стоящего изображения по центру приводился пример помещения его в блок div
или figure
. Однако мы можем сделать само изображение блочным элементом с помощью объявления display: block
. После этого центрировать его с помощью margin: auto
.
img { display: block; margin: 0 auto; max-width: 100%; height: auto; } … <img src="gnu.png" alt="Логотип GNU" >
Бывает, что маленькие картинки предпочитают обтекать текстом слева или справа. Для этого используют свойство float
со значением left
или right
. В случае float: left
элемент будет «уплывать» налево. Другие элементы будут оказываться справа от него.
Здесь может потребоваться решать две проблемы:
- Бывает необходимо, чтобы только конкретный абзац обтекал изображение.
- На узких экранах обтекание должно смениться на расположение картинки и текста друг под другом. Иначе получается слишком мало места для текста сбоку от изображения, и верстка выглядит плохо.
Первая проблема решается с помощью свойства clear
. В примере на скрине выше допустим мы не хотим, чтобы второй абзац обтекал символ копилефта. Следовательно, очищать обтекание мы должны у него.
<p> Самым известным …</p>
Объявление clear: left
заставляет элемент перестать обтекать объекты, расположенные с левой стороны. Вариант clear: both
– с обоих сторон. В нашем примере значение both
дало бы тот же результат.
Чтобы убрать обтекание изображений на малых экранах, потребуется использовать @media-запрос, в котором значения свойств будут меняться. Однако если мы до этого оформляли элемент через атрибут style
тега, то такой inline-стиль (строчный) имеет приоритет над внешней или внутренней таблицей стилей.
Поэтому в нашем случае понадобится использовать команду !impotant
:
@media (max-width: 599px) { img { float: none!important; padding: 0!important; display: block; margin: 0 auto; max-width: 100%; height: auto; } }
Когда на странице несколько изображений оформляются по-разному, то inline-стили могут выглядеть предпочтительными. Если же можно выделить несколько групп изображений, каждая из которых стилизуется по-своему, следует задуматься об использовании классов.
Свойство float
применяется не только при позиционировании изображений, также любых блочных элементов, может служить основой создания отзывчивого дизайна.
Автосервис IMG | German Car Specialists
Специализируясь на
German Cars
International Motor Group стремится развивать долгосрочные отношения со своими клиентами, основанные на честной и точной оценке потребностей вашего автомобиля. IMG делает это благодаря постоянному совершенствованию автомобильных технических возможностей и стремлению удовлетворить потребности клиентов. Мы специализируемся на обслуживании Mercedes-Benz, BMW, Audi, Porsche и Mini, но обслуживаем все марки и модели.
О нас
Наше местонахождение
В настоящее время мы находимся в Юнионе, штат Нью-Джерси, где работаем уже 27 лет.
Union, NJ
1449 Stuyvesant Ave Union, NJ 07083
Что говорят наши клиенты
Что я могу сказать о Джо. У меня была проблема с аккумулятором автомобиля Audi. Дилерский центр собирался взять с меня 255 долларов за батарею и 255 долларов за установку батареи. Джо смог получить аккумулятор у дилера за 19 долларов.0 и бесплатно установил его на свою машину. Джо — настоящий спасатель, потому что он принадлежит к вымирающему поколению Механиков, которые честны и знают, что делают.
— Омар Рейес
Лучшие из лучших. Если у вас есть автомобиль, которому нужна настоящая механика, не ищите дальше. Другие игроки просто играют с вами, но Сал и Джо делают свою работу один раз, всегда используя спецификации производителя для года и модели вашего автомобиля.
— Питер Кубертье
Опытные механики, честные и дружелюбные. Это мой выбор для всех моих автомобилей за последние 20 лет или около того. Я всегда с полной уверенностью и спокойствием обслуживаю здесь свои машины.
— Джеймс МакГарри
Наконец-то я нашел честного, заботливого, знающего и понимающего механика; тот, кто ставит потребности клиентов на первое место. Он относился ко мне как к члену семьи, хотя я был там впервые. Моя искренняя признательность Салу и команде за заботу обо мне и моей машине. Они еще услышат обо мне. СПАСИБО САЛ!
— Сэнди N
Уже много лет я отдаю свою машину в IMG. Я узнал о них через Google и выбрал их из-за их отличных отзывов. Сал и его команда потрясающие. Если бы я мог дать им 10 звезд, я бы поставил. Они хорошо осведомлены, заслуживают доверия и эффективны. Вы не найдете лучшего автомагазина в Нью-Джерси.
— Кристофер Аллан
Автосервис IMG | German Car Specialists
Специализируясь на
German Cars
International Motor Group стремится развивать долгосрочные отношения со своими клиентами, основанные на честной и точной оценке потребностей вашего автомобиля. IMG делает это благодаря постоянному совершенствованию автомобильных технических возможностей и стремлению удовлетворить потребности клиентов. Мы специализируемся на обслуживании Mercedes-Benz, BMW, Audi, Porsche и Mini, но обслуживаем все марки и модели.
О нас
Наше местонахождение
В настоящее время мы находимся в Юнионе, штат Нью-Джерси, где работаем уже 27 лет.
Union, NJ
1449 Stuyvesant Ave Union, NJ 07083
Что говорят наши клиенты
Что я могу сказать о Джо. У меня была проблема с аккумулятором автомобиля Audi. Дилерский центр собирался взять с меня 255 долларов за батарею и 255 долларов за установку батареи. Джо смог получить аккумулятор у дилера за 19 долларов.0 и бесплатно установил его на свою машину. Джо — настоящий спасатель, потому что он принадлежит к вымирающему поколению Механиков, которые честны и знают, что делают.
— Омар Рейес
Лучшие из лучших. Если у вас есть автомобиль, которому нужна настоящая механика, не ищите дальше. Другие игроки просто играют с вами, но Сал и Джо делают свою работу один раз, всегда используя спецификации производителя для года и модели вашего автомобиля.
— Питер Кубертье
Опытные механики, честные и дружелюбные. Это мой выбор для всех моих автомобилей за последние 20 лет или около того. Я всегда с полной уверенностью и спокойствием обслуживаю здесь свои машины.
— Джеймс МакГарри
Наконец-то я нашел честного, заботливого, знающего и понимающего механика; тот, кто ставит потребности клиентов на первое место.