Есть ли возможность выровнять текст (а также изображение) по центру в редакторе форматированного текста sanity.io (переносимый текст)? Ничего не нашел в документации
Выравнивание текста / изображения в портативном текстовом редакторе Sanity.io
Ответы (2)
Нет, готового решения пока нет. У Sanity много просьб об этом. Но вы можете сделать его самостоятельно на основе css. Подробнее об этом здесь. Вы можете быстрее получить поддержку по Sanity Slack. Есть также несколько существующих подходов к согласованию с сообществом, если вы используете там поиск.
К сожалению, это известное (текущее) ограничение редактора Portable Text. Согласно документации Stanity:
Бывают ситуации, когда грань между смыслом и презентацией нечеткая. Возьмите выравнивание текста. Во многих случаях это может быть связано с таблицей стилей, где отображается контент. Но есть случаи, когда вам нужно контролировать выравнивание текста, чтобы иметь возможность воспроизводить определенные представления текста, такие как стихи и тому подобное. В этом случае мы бы предложили либо добавить настраиваемый тип, либо создать отдельный стиль, который также более конкретно встраивал бы этот вариант использования.
Решения:
1. Создайте произвольный тип
{
name: 'textAlignment',
type: 'object',
title: 'Text Alignment',
fields: [
{
title: 'Content',
name: 'text',
type: 'portableText'
},
{
title: 'Alignment',
name: 'alignment',
type: 'string',
options: {
list: [
{title: 'Left', value: 'left'},
{title: 'Right', value: 'right'},
{title: 'Center', value: 'center'},
],
}
}
]
}
2. Создайте собственный стиль.
например normal + right и реализуйте выравнивание в своем интерфейсе с помощью сериализатора блоков. Обратной стороной является то, что вы не можете сочетать это с другими стилями. Например. у вас не может быть блока H1 с выравниванием текста.