Methods to center CSS images: 1. Use the "text-align: center;" style; 2. Use the "margin: 0 auto;" style; 3. Use flexible box layout; 4. Use grid layout ; 5. Use absolute positioning to align; 6. Use the background attribute to center the background image.
The operating environment of this tutorial: Windows 7 system, CSS3&&HTML5 version, Dell G3 computer.
html
<div id="pic"> <img src=star.jpg class="logo" alt="What are the ways to center images in css" > </div>
1. (The simplest) Text attribute alignment text-align
text-align control element Chinese The alignment of this row. You can set a parent div in img, so that img can be the text of the div, and then use text-align to modify the div attributes. (Add attributes to the parent element)
Note: The child element must be inline or inline-block; if the child element is also a div, you need to set display: inline/inline-block for the child element . The child element img here is inline, so this step is omitted. This method is suitable for inline elements. For example, img is centered
css
#pic { text-align: center; /*表示div的子元素居中*/ }
2. Use margin
css
img { display: block; width: 100px; margin: 0 auto; }
and above Three points are indispensable.
margin: 0 auto; The prerequisite for centering is:
Inline elements must be set to display: block; img must be set to inline elements set up. If it is input, it does not need to be set.
Elements must have width; except those with built-in width, such as button and input.
According to the premise, there is another method - modifying the parent element attributes
#pic { width: 100px; margin: 0 auto; } /*父元素div属于block,所以不用再设 display: block;*/
In summary, this method is suitable for block elements. For example, the centering of div and input
Limitations of margin: When displaying two images in one line, the margin needs to be modified accordingly.
3. Flexible box layout
css
#pic { display: flex; justify-content: center; }
Flexible box layout can use a few lines of css to achieve almost any layout. And the most amazing thing is that even the top two rows of n pictures can be centered, without having to consider the picture layout and position.
4. Grid layout
Flexible boxes are most commonly used in navigation bars. In contrast, grid layout is a universal layout system.
#pic { display: grid; align-items: center; /*块级方向(纵向)上的全部栅格元素居中对齐*/ justify-items: center; /*行内方向(横向)所有的元素中线对齐*/ }
So it is very convenient to deal with the problem of aligning multiple pictures.
5. Alignment in absolute positioning
css
#pic { position: relative; /*设置绝对定位元素(img)的容纳块,如果不设置,那么容纳块默认为body*/ } .logo { position: absolute; right: 1em; left: 1em; //表示左右距离相等 margin: 0 auto; //与方法二相似 }
The biggest difference from method two is that the usage of margin is for block elements. If you use position, you don't need to set block. However, position is generally used in frame layout. If it is just to center the picture, it is overkill and troublesome. Not recommended.
6. The background image is centered
#html
<div></div>
css
div { height: 1000px; /*高度非常重要*/ background: url(star.jpg) no-repeat top center; }
Premise: As long as the element content is empty, it must Set height. Because the div content is empty, the height must be set, otherwise the div will have no space, and the background image will not be displayed. If it's a body, you don't need it, because the body has its own height.
The limitation of setting it as a background image is that you cannot set the attributes of images such as hyperlinks, title, alt, etc. If it is not a background image, try not to use this format.
(Learning video sharing: css video tutorial)
The above is the detailed content of What are the ways to center images in css. For more information, please follow other related articles on the PHP Chinese website!

React is the tool of choice for building dynamic and interactive user interfaces. 1) Componentization and JSX make UI splitting and reusing simple. 2) State management is implemented through the useState hook to trigger UI updates. 3) The event processing mechanism responds to user interaction and improves user experience.

React is a front-end framework for building user interfaces; a back-end framework is used to build server-side applications. React provides componentized and efficient UI updates, and the backend framework provides a complete backend service solution. When choosing a technology stack, project requirements, team skills, and scalability should be considered.

The relationship between HTML and React is the core of front-end development, and they jointly build the user interface of modern web applications. 1) HTML defines the content structure and semantics, and React builds a dynamic interface through componentization. 2) React components use JSX syntax to embed HTML to achieve intelligent rendering. 3) Component life cycle manages HTML rendering and updates dynamically according to state and attributes. 4) Use components to optimize HTML structure and improve maintainability. 5) Performance optimization includes avoiding unnecessary rendering, using key attributes, and keeping the component single responsibility.

React is the preferred tool for building interactive front-end experiences. 1) React simplifies UI development through componentization and virtual DOM. 2) Components are divided into function components and class components. Function components are simpler and class components provide more life cycle methods. 3) The working principle of React relies on virtual DOM and reconciliation algorithm to improve performance. 4) State management uses useState or this.state, and life cycle methods such as componentDidMount are used for specific logic. 5) Basic usage includes creating components and managing state, and advanced usage involves custom hooks and performance optimization. 6) Common errors include improper status updates and performance issues, debugging skills include using ReactDevTools and Excellent

React is a JavaScript library for building user interfaces, with its core components and state management. 1) Simplify UI development through componentization and state management. 2) The working principle includes reconciliation and rendering, and optimization can be implemented through React.memo and useMemo. 3) The basic usage is to create and render components, and the advanced usage includes using Hooks and ContextAPI. 4) Common errors such as improper status update, you can use ReactDevTools to debug. 5) Performance optimization includes using React.memo, virtualization lists and CodeSplitting, and keeping code readable and maintainable is best practice.

React combines JSX and HTML to improve user experience. 1) JSX embeds HTML to make development more intuitive. 2) The virtual DOM mechanism optimizes performance and reduces DOM operations. 3) Component-based management UI to improve maintainability. 4) State management and event processing enhance interactivity.

React components can be defined by functions or classes, encapsulating UI logic and accepting input data through props. 1) Define components: Use functions or classes to return React elements. 2) Rendering component: React calls render method or executes function component. 3) Multiplexing components: pass data through props to build a complex UI. The lifecycle approach of components allows logic to be executed at different stages, improving development efficiency and code maintainability.

React Strict Mode is a development tool that highlights potential issues in React applications by activating additional checks and warnings. It helps identify legacy code, unsafe lifecycles, and side effects, encouraging modern React practices.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

WebStorm Mac version
Useful JavaScript development tools

Notepad++7.3.1
Easy-to-use and free code editor

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.