Как писать логарифмы?

Для обозначения логарифмов обычно используется слово log, после которого в нижнем индексе указывается основание логарифма. К примеру, логарифм b по основанию a выглядит так.

log a b

Нижний индекс делается с помощью элемента <msub>, внутри него должно располагаться только два элемента — основание и индекс. В общем виде код для логарифма в MathML будет следущий.

Код примера скопирован в буфер
<math>
 <msub>
  <mi>log</mi>
  <mi>a</mi>
 </msub>
 <mi>b</mi>
</math>

Если вместо переменных a и b используются числа, то элемент <mi> заменяется на <mn>. Например, код для логарифма 8 по основанию 2 выглядит следующим образом.

Код примера скопирован в буфер
<math>
 <msub>
  <mi>log</mi>
  <mn>2</mn>
 </msub>
 <mn>8</mn>
</math>

В примере 1 показано написание логарифма в математическом неравенстве.

Пример 1. Неравенство с логарифмами

Код примера скопирован в буфер
<!DOCTYPE html>
<html lang="ru">
 <head>
  <meta charset="utf-8">
  <title>MathML</title>
 </head>
 <body>
  <p>Решите неравенство</p>
  <math display="block">
   <msub>
    <mi>log</mi>
    <mn>2</mn>
   </msub>
   <msub>
    <mi>log</mi>
    <mn>0,5</mn>
   </msub>
   <mrow>
    <mo fence="true" form="prefix">(</mo>
    <msup>
     <mn>2</mn>
     <mi>x</mi>
    </msup>
    <mo>−</mo>
    <mfrac>
     <mn>15</mn>
     <mn>16</mn>
    </mfrac>
    <mo fence="true" form="postfix">)</mo>
   </mrow>
   <mo>⩽</mo>
   <mn>2</mn>
  </math>
 </body>
</html>

Результат данного примера показан на рис. 1.

Рис. 1. Логарифмы

В зависимости от вида логарифмов применяются разные обозначения:

  • lnb или logeb — натуральный логарифм;
  • lgb или log10b — десятичный логарифм;
  • lbb или log2b — двоичный логарифм.

Для отображения таких логарифмов не требуется использование элемента <msub>, поскольку основание логарифма не указывается.

Код примера скопирован в буфер
<mi>lg</mi>
<mn>5</mn>

В примере 2 показано уравнение с десятичными логарифмами.

Пример 2. Десятичные логарифмы

Код примера скопирован в буфер
<!DOCTYPE html>
<html lang="ru">
 <head>
  <meta charset="utf-8">
  <title>MathML</title>
 </head>
 <body>
  <p>Решите уравнение</p>
  <math display="block">
   <mi>lg</mi>
   <msqrt>
    <mrow>
     <mi>x</mi>
     <mo>−</mo>
     <mn>5</mn>
    </mrow>
   </msqrt>
   <mo>+</mo>
   <mi>lg</mi>
   <msqrt>
    <mrow>
     <mn>2</mn>
     <mi>x</mi>
     <mo>−</mo>
     <mn>3</mn>
    </mrow>
   </msqrt>
   <mo>+</mo>
   <mn>1</mn>
   <mo>=</mo>
   <mi>lg</mi>
   <mn>30</mn>
  </math>
 </body>
</html>

Для стилизации логарифмов к соответствующим элементам <msub> следует добавить стилевой класс и задать необходимые свойства для него. Ниже показано добавление класса log к <msub>.

<math>
 <msub class="log">
  <mi>log</mi>
  <mn>2</mn>
 </msub>
 <mn>8</mn>
</math>

В примере 3 после <msub> добавляется небольшое пустое пространство с помощью свойства margin-right.

Пример 3. Использование margin-righ

Код примера скопирован в буфер
<!DOCTYPE html>
<html lang="ru">
 <head>
  <meta charset="utf-8">
  <title>MathML</title>
  <style>
   .log {
    margin-right: 0.3em; /* Расстояние справа */
   }
  </style>
 </head>
 <body>
  <p>Решите неравенство</p>
  <math display="block">
   <msub class="log">
    <mi>log</mi>
    <mn>5</mn>
   </msub>
   <mo fence="true" form="prefix">(</mo>
   <mo fence="true" form="prefix">(</mo>
   <mi>x</mi>
   <mo>+</mo>
   <mn>1</mn>
   <mo fence="true" form="postfix">)</mo>
   <mo fence="true" form="prefix">(</mo>
   <mi>x</mi>
   <mo>+</mo>
   <mn>3</mn>
   <mo fence="true" form="postfix">)</mo>
   <mo fence="true" form="postfix">)</mo>
   <mo>⩽</mo>
   <mn>1</mn>
  </math>
 </body>
</html>