4_jsx-绑定样式.html 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <script src="./babel.min.js"></script>
  8. <script src="./react.development.js"></script>
  9. <script src="./react-dom.development.js"></script>
  10. <style>
  11. /* .box{
  12. width: 500px;
  13. height: 500px;
  14. border: 1px solid #000;
  15. margin: 0 auto;
  16. } */
  17. </style>
  18. </head>
  19. <body>
  20. <div id="root"></div>
  21. <!-- className :
  22. className = '类名'
  23. className = {'类名'}
  24. -->
  25. <script type="text/babel">
  26. //动态渲染模式
  27. // jsx中style样式是对象Object格式 不能是字符串格式
  28. // let box = <div className={'box'}>这里展示样式</div>
  29. // 需求: 盒子样式; 大盒子居中 小盒子通过弹性盒子布局分别在左右两侧
  30. let newBox = {
  31. width:'500px',
  32. height:'500px',
  33. border:'1px solid #00f',
  34. margin:'0 auto',
  35. display:'flex',
  36. justifyContent:'space-between',
  37. alignItem:'center'
  38. }
  39. let left = {
  40. width:'100px',
  41. height:'100px',
  42. // jsx中动态渲染样式 样式属性若是多单词组成需要将其变成驼峰命名法
  43. backgroundColor:'#e83c09',
  44. color:'#0e7fc7'
  45. }
  46. let box = (
  47. <div style={newBox}>
  48. <div style={left}>左侧盒子</div>
  49. <div style={{
  50. width:'100px',
  51. height:'100px',
  52. backgroundColor:'blue',
  53. color:'#168743'
  54. }}>右侧盒子</div>
  55. </div>
  56. )
  57. const getelement = document.getElementById('root');
  58. ReactDOM.createRoot(getelement).render(box)
  59. </script>
  60. </body>
  61. </html>