はじめに
ウェブ開発において、テキストが1行に収まる場合にのみ中央揃えし、複数行にわたる場合は左揃えを保ちたい場合は、適切なCSSのテクニックを使えば簡単に実現できます。この記事では、1行に収まる場合にのみCSSでテキストを中央揃えする方法を紹介します。
モダンなアプローチ
このタスクを実行するための1つの方法は、CSSの最新の機能を利用するものです。2行のコードブロックを使うだけで、望む効果を得ることができます。関連するCSSのプロパティは、margin-inline: auto
とmax-inline-size: max-content
です。以下にコードの例を示します。
css
.text {
margin-inline: auto;
max-inline-size: max-content;
}
max-inline-size: max-content
は、要素の最大サイズをそのコンテンツのサイズに合わせます。margin-inline: auto
は、margin-left: auto; margin-right: auto;
と同様の動作をし、要素を中央揃えします。
代替方法
もう一つの方法は、CSSのいくつかのプロパティを使用して同じ効果を実現することです。このアプローチは、古いバージョンのCSSで作業している場合や、モダンなプロパティがサポートされていない場合に役立ちます。実装方法は次の通りです。
css
.text {
display: table;
margin-left: auto;
margin-right: auto;
text-align: left; /* Use this if the parent element has text-align: center applied */
}
このアプローチの仕組みは次のとおりです。
- 要素に
display: table
を指定すると、その幅がコンテンツに基づいて調整されます。したがって、テキストが短い場合、要素の幅は狭くなります。 - テーブル要素は、
margin-left
とmargin-right
の両方をauto
に設定することで水平方向に中央揃えされます。これはmargin-inline: auto
でも可能です。 text-align: left
が設定されている場合、テキストは複数行に折り返されたときにも左揃えのままでになります。
AlloyDB
Amazon Cognito
Amazon EC2
Amazon ECS
Amazon QuickSight
Amazon RDS
Amazon Redshift
Amazon S3
API
Autonomous Vehicle
AWS
AWS API Gateway
AWS Chalice
AWS Control Tower
AWS IAM
AWS Lambda
AWS VPC
BERT
BigQuery
Causal Inference
ChatGPT
Chrome Extension
CircleCI
Classification
Cloud Functions
Cloud IAM
Cloud Run
Cloud Storage
Clustering
CSS
Data Engineering
Data Modeling
Database
dbt
Decision Tree
Deep Learning
Descriptive Statistics
Differential Equation
Dimensionality Reduction
Discrete Choice Model
Docker
Economics
FastAPI
Firebase
GIS
git
GitHub
GitHub Actions
Google
Google Cloud
Google Search Console
Hugging Face
Hypothesis Testing
Inferential Statistics
Interval Estimation
JavaScript
Jinja
Kedro
Kubernetes
LightGBM
Linux
LLM
Mac
Machine Learning
Macroeconomics
Marketing
Mathematical Model
Meltano
MLflow
MLOps
MySQL
NextJS
NLP
Nodejs
NoSQL
ONNX
OpenAI
Optimization Problem
Optuna
Pandas
Pinecone
PostGIS
PostgreSQL
Probability Distribution
Product
Project
Psychology
Python
PyTorch
QGIS
R
ReactJS
Regression
Rideshare
SEO
Singer
sklearn
Slack
Snowflake
Software Development
SQL
Statistical Model
Statistics
Streamlit
Tabular
Tailwind CSS
TensorFlow
Terraform
Transportation
TypeScript
Urban Planning
Vector Database
Vertex AI
VSCode
XGBoost