mirror of
				https://github.com/phuoc-ng/csslayout.git
				synced 2025-10-29 04:16:23 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			189 lines
		
	
	
		
			7.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			189 lines
		
	
	
		
			7.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| /**
 | |
|  * A collection of popular layouts and patterns made with CSS (https://csslayout.io)
 | |
|  * (c) 2019 - 2020 Nguyen Huu Phuoc <https://twitter.com/nghuuphuoc>
 | |
|  */
 | |
| 
 | |
| import React from 'react';
 | |
| import { Helmet } from 'react-helmet';
 | |
| 
 | |
| import DetailsLayout from '../../layouts/DetailsLayout';
 | |
| import Block from '../../placeholders/Block';
 | |
| import BrowserFrame from '../../placeholders/BrowserFrame';
 | |
| import Circle from '../../placeholders/Circle';
 | |
| import Line from '../../placeholders/Line';
 | |
| 
 | |
| const Details: React.FC<{}> = () => {
 | |
|     return (
 | |
|         <DetailsLayout title="Wizard">
 | |
|             <Helmet>
 | |
|                 <meta name="description" content="Create a wizard with CSS flexbox" />
 | |
|                 <meta name="keywords" content="css flexbox, css stepper, css wizard" />
 | |
|             </Helmet>
 | |
|             <div className='p-8 pb-20'>
 | |
|                 <BrowserFrame
 | |
|                     content={(
 | |
|                         <div
 | |
|                             style={{
 | |
|                                 alignItems: 'center',
 | |
|                                 display: 'flex',
 | |
|                                 flexDirection: 'column',
 | |
|                                 height: '100%',
 | |
|                                 justifyContent: 'center',
 | |
|                                 padding: '8px',
 | |
|                             }}
 | |
|                         >
 | |
|                             <div style={{ display: 'flex', width: '80%' }}>
 | |
|                                 <div style={{ flex: 1 }}>
 | |
|                                     <div
 | |
|                                         style={{
 | |
|                                             alignItems: 'center',
 | |
|                                             display: 'flex',
 | |
|                                             justifyContent: 'center',
 | |
|                                             marginBottom: '16px',
 | |
|                                         }}
 | |
|                                     >
 | |
|                                         <div style={{ flex: 1 }} />
 | |
|                                         <div
 | |
|                                             style={{
 | |
|                                                 alignItems: 'center',
 | |
|                                                 display: 'flex',
 | |
|                                                 justifyContent: 'center',
 | |
|                                                 margin: '0 4px',
 | |
|                                             }}
 | |
|                                         >
 | |
|                                             <Circle size={32} />
 | |
|                                         </div>
 | |
|                                         <div style={{ flex: 1 }}><Line /></div>
 | |
|                                     </div>
 | |
|                                     <div style={{ display: 'flex', justifyContent: 'center', padding: '0 16px' }}>
 | |
|                                         <Block justify='center' numberOfBlocks={5} />
 | |
|                                     </div>
 | |
|                                 </div>
 | |
|                                 <div style={{ flex: 1 }}>
 | |
|                                     <div
 | |
|                                         style={{
 | |
|                                             alignItems: 'center',
 | |
|                                             display: 'flex',
 | |
|                                             justifyContent: 'center',
 | |
|                                             marginBottom: '16px',
 | |
|                                         }}
 | |
|                                     >
 | |
|                                         <div style={{ flex: 1 }}><Line /></div>
 | |
|                                         <div
 | |
|                                             style={{
 | |
|                                                 alignItems: 'center',
 | |
|                                                 display: 'flex',
 | |
|                                                 justifyContent: 'center',
 | |
|                                                 margin: '0 4px',
 | |
|                                             }}
 | |
|                                         >
 | |
|                                             <Circle size={32} />
 | |
|                                         </div>
 | |
|                                         <div style={{ flex: 1 }}><Line /></div>
 | |
|                                     </div>
 | |
|                                     <div style={{ display: 'flex', justifyContent: 'center', padding: '0 16px' }}>
 | |
|                                         <Block justify='center' numberOfBlocks={5} />
 | |
|                                     </div>
 | |
|                                 </div>
 | |
|                                 <div style={{ flex: 1 }}>
 | |
|                                     <div
 | |
|                                         style={{
 | |
|                                             alignItems: 'center',
 | |
|                                             display: 'flex',
 | |
|                                             justifyContent: 'center',
 | |
|                                             marginBottom: '16px',
 | |
|                                         }}
 | |
|                                     >
 | |
|                                         <div style={{ flex: 1 }}><Line /></div>
 | |
|                                         <div
 | |
|                                             style={{
 | |
|                                                 alignItems: 'center',
 | |
|                                                 display: 'flex',
 | |
|                                                 justifyContent: 'center',
 | |
|                                                 margin: '0 4px',
 | |
|                                             }}
 | |
|                                         >
 | |
|                                             <Circle size={32} />
 | |
|                                         </div>
 | |
|                                         <div style={{ flex: 1 }} />
 | |
|                                     </div>
 | |
|                                     <div style={{ display: 'flex', justifyContent: 'center', padding: '0 16px' }}>
 | |
|                                         <Block justify='center' numberOfBlocks={5} />
 | |
|                                     </div>
 | |
|                                 </div>
 | |
|                             </div>
 | |
|                         </div>
 | |
|                     )}
 | |
|                     source={`
 | |
| <div style="
 | |
|     display: flex;
 | |
| ">
 | |
|     <!-- Step -->
 | |
|     <div style="
 | |
|         /* Make all steps have the same width */
 | |
|         flex: 1;
 | |
|     ">
 | |
|         <div style="
 | |
|             /* Center the content */
 | |
|             align-items: center;
 | |
|             display: flex;
 | |
|             justify-content: center;
 | |
|         ">
 | |
|             <!-- The left connector -->
 | |
|             <div style="
 | |
|                 flex: 1;
 | |
|                 height: 1px;
 | |
| 
 | |
|                 background-color: rgba(0, 0, 0, .3);
 | |
|                 /*
 | |
|                 For the first step, you might need to set it to transparent background:
 | |
|                 background-color: transparent;
 | |
|                 */
 | |
|             " />
 | |
| 
 | |
|             <!-- The step number -->
 | |
|             <div style="
 | |
|                 /* Center the content */
 | |
|                 align-items: center;
 | |
|                 display: flex;
 | |
|                 justify-content: center;
 | |
| 
 | |
|                 /* Rounded border */
 | |
|                 background-color: rgba(0, 0, 0, .3);
 | |
|                 border-radius: 9999px;
 | |
|                 height: 32px;
 | |
|                 width: 32px;
 | |
| 
 | |
|                 /* OPTIONAL: Spacing between it and connectors */
 | |
|                 margin-left: 4px;
 | |
|                 margin-right: 4px;
 | |
|             ">
 | |
|                 ...
 | |
|             </div>
 | |
| 
 | |
|             <!-- The right connector -->
 | |
|             <div style="
 | |
|                 flex: 1;
 | |
|                 height: 1px;
 | |
| 
 | |
|                 background-color: rgba(0, 0, 0, .3);
 | |
|                 /*
 | |
|                 For the last step, you might need to set it to transparent background:
 | |
|                 background-color: transparent;
 | |
|                 */
 | |
|             " />
 | |
|         </div>
 | |
| 
 | |
|         <!-- Title of step -->
 | |
|         ...
 | |
|     </div>
 | |
| </div>
 | |
| `}
 | |
|                 />
 | |
|             </div>
 | |
|         </DetailsLayout>
 | |
|     );
 | |
| };
 | |
| 
 | |
| export default Details;
 |