Дроби в MathML

Дроби в математике — одна из форм представления чисел. Дробь состоит из двух основных элементов: числителя и знаменателя.

Числитель Знаменатель

Числитель — это число, которое находится над чертой и показывает, сколько частей целого мы берём. Знаменатель — это число, которое находится под чертой и показывает, на сколько равных частей было разделено целое.

Для записи дробей в MathML применяется элемент <mfrac>, который содержит два дочерних элемента: числитель и знаменатель.

<mfrac>
  <mn>Числитель</mn>
  <mn>Знаменатель</mn>
<mfrac>

К примеру, для создания дроби 1/2 следует написать так:

<mfrac>
  <mn>1</mn>
  <mn>2</mn>
<mfrac>

В примере 1 показано использование дробей для отображения неравенства.

Пример 1. Использование <mfrac>

Код примера скопирован в буфер
<!DOCTYPE html>
<html lang="ru">
 <head>
  <meta charset="utf-8">
  <title>MathML</title>
 </head>
 <body>
  <p>Решите неравенство:</p>
  <math display="block">
   <mi>cos</mi>
   <mi>x</mi>
   <mo>≤</mo>
   <mfrac>
    <mn>1</mn>
    <mn>3</mn>
   </mfrac>
   <mtext>.</mtext>
  </math>
 </body>
</html>

Внутри <mfrac> допускается наличие только двух дочерних элементов, поэтому для сложных выражений требуется сгруппировать элементы с помощью <mrow>.

Код примера скопирован в буфер
<math display="block">
 <mfrac>
  <mrow>
   <mn>4</mn>
   <mo>+</mo>
   <mn>8</mn>
  </mrow>
  <mn>6</mn> 
 </mfrac>
</math>

В примере 2 показано использование <mfrac> в сочетании с <mrow>.

Пример 2. Использование <mrow>

Код примера скопирован в буфер
<!DOCTYPE html>
<html lang="ru">
 <head>
  <meta charset="utf-8">
  <title>MathML</title>
 </head>
 <body>
  <p>Сложение дробей:</p>
  <math display="block">
  <mfrac>
   <mi>a</mi>
   <mi>c</mi>
  </mfrac>
  <mo>+</mo>
  <mfrac>
   <mi>b</mi>
   <mi>c</mi>
  </mfrac>
  <mo>=</mo>
  <mfrac>
   <mrow>
    <mi>a</mi>
    <mo>+</mo>
    <mi>b</mi>
   </mrow>
   <mi>c</mi>
  </mfrac>
 </math>
</body>
</html>

Дроби и скобки

Браузеры, как правило, корректно масштабируют скобки в соответствии с размерами выражения. В частности, скобки, добавленные до и после <mfrac>, растягиваются вместе с дробью.

Код примера скопирован в буфер
<math display="block">
 <mo fence="true" form="prefix">(</mo>
 <mfrac>
  <mn>1</mn>
  <mn>3</mn>
 </mfrac>
 <mo fence="true" form="postfix">)</mo>
</math>

При этом браузер Firefox не всегда корректно растягивает скобки на высоту дроби. Если это происходит, то дробь вместе со скобками следует объединить в группу с помощью элемента <mrow>.

Код примера скопирован в буфер
<math display="block">
 <mrow>
  <mo fence="true" form="prefix">(</mo>
  <mfrac>
   <mn>1</mn>
   <mn>3</mn>
  </mfrac>
  <mo fence="true" form="postfix">)</mo>
 </mrow>
</math>

Толщина линии

Числитель и знаменатель в дроби отделяются друг от друга горизонтальной линией. Ширина и толщина этой линии определяется браузером самостоятельно, в зависимости от выражения и размера шрифта. При этом толщину линии можно задать самостоятельно с помощью атрибута linethickness элемента <mfrac>. В качестве значения можно применять пиксели (px) и другие единицы CSS. Вот, к примеру, как задать толщину линии в два пикселя.

<mfrac linethickness="2px">

Допустимо указывать нулевое значение, чтобы линия вообще не отображалась, как показано в примере 3.

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

Код примера скопирован в буфер
<!DOCTYPE html>
<html lang="ru">
 <head>
  <meta charset="utf-8">
  <title>MathML</title>
 </head>
 <body>
  <math display="block">
   <mrow>
    <mo fence="true" form="prefix">(</mo>
    <mfrac linethickness="0">
     <mi>n</mi>
     <mi>k</mi>
    </mfrac>
    <mo fence="true" form="postfix">)</mo>
   </mrow>
  </math>
 </body>
</html>

Итоги

  • Для создания дробей в MathML применяется элемент <mfrac>.
  • <mfrac> должен содержать два дочерних элемента: числитель и знаменатель.
  • Если числитель или знаменатель содержит более одного элемента, их следует сгруппировать через элемент <mrow>.
  • Атрибут linethickness элемента <mfrac> задаёт толщину линии дроби.

Перейти к заданиям

Автор: Влад Мержевич
Последнее изменение: 18.04.2024

Вопрос 1 из 5

Какой элемент MathML используется для отображения дробей?
<mfraction>
<munderover>
<mrow>
<mfrac>

Расставьте в правильном порядке.
<math display="block">
  D
  <mo></mo>
  
    <mn></mn>
    <mi></mi>
  
</math>
F<mfrac>1<mi>=</mfrac></mi>

Заполните пустые поля.
<math display="block">
  <mi>p</mi>
  =
  
    
      <mi>h</mi>
      <mi>v</mi>
    </mrow>
    c
  </mfrac>
</math>

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1

Создайте выражение с помощью MathML, как показано на рис. 1.

Рис. 1