Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用ReactJS实现响应性布局?_Javascript_Html_Css_Reactjs_Responsive - Fatal编程技术网

Javascript 如何使用ReactJS实现响应性布局?

Javascript 如何使用ReactJS实现响应性布局?,javascript,html,css,reactjs,responsive,Javascript,Html,Css,Reactjs,Responsive,我还是JavaScript和ReactJS的初学者 我正在做一个项目来提高我的知识。我有一个与CSS和HTML布局已经响应。我正试图在我的ReactJS项目上用Javascript实现一些逻辑。当我点击我的汉堡图标时,我的导航打开,当我点击我的关闭图标时,我的导航关闭。你能告诉我怎么做吗 由于布局仅在HTML和CSS中响应,因此mynav的显示取决于屏幕的宽度 这是我输入的代码 import React,{useState}来自“React”; 导入“/index.scss”; 常量Home

我还是JavaScript和ReactJS的初学者

我正在做一个项目来提高我的知识。我有一个与CSS和HTML布局已经响应。我正试图在我的ReactJS项目上用Javascript实现一些逻辑。当我点击我的
汉堡图标时,我的
导航
打开,当我点击我的
关闭
图标时,我的
导航
关闭。你能告诉我怎么做吗

由于布局仅在HTML和CSS中响应,因此my
nav
的显示取决于屏幕的宽度

这是我输入的代码

import React,{useState}来自“React”;
导入“/index.scss”;
常量Home=()=>{
const[showMenu,setShowMenu]=使用状态(false);
恒把手图标=(e)=>{
e、 预防默认值();
设置showMenu(!showMenu);
};
返回(
类别
  • 金卡戴珊 2009年,金·卡戴珊与她合作推出了香水系列 签名香水,Kim称为Kim Kardashian 卡戴珊。

    伍迪/东方/{“} 美食家
    • 样本{'} 自由的
    • 正规{'} 38.00€
); }; 导出默认主页
:根目录{
--白色:#ffffff;
--黑色:#11111 6;
--灰色:#f4f7f6;
--灰黑色:#6c7680;
--橙色:#ff8f32;
}
身体,
html{
字体系列:Helvetica,无衬线;
字体大小:300;
线高:1.5;
颜色:var(--黑色);
文本对齐:左对齐;
背景色:var(--灰色);
}
* {
框大小:边框框;
保证金:0;
填充:0;
}
保险商实验室{
列表样式类型:无;
}
p{
颜色:var(--灰色-深色);
}
.标签{
颜色:var(--橙色);
文本对齐:右对齐;
}
h1{
颜色:var(--橙色);
字体大小:400;
}
氢{
字号:2.125rem;
填充:0 1rem;
}
h3{
字体大小:1.5rem;
填充:0.5雷姆;
字体大小:300;
}
.柔性容器{
显示器:flex;
柔性流:行换行;
文本对齐:居中;
最大宽度:1400px;
保证金:2rem自动;
}
.flex容器>*{
填充:15px;
弹性:1100%;
}
标题{
显示器:flex;
对齐项目:居中;
文本对齐:居中;
边缘底部:2rem;
}
伯格尔巴顿先生{
右边距:1rem;
光标:指针;
}
.burguer button分区{
宽度:2em;
高度:0.25雷姆;
背景色:var(--黑色);
保证金底部:0.3雷姆;
}
输入[type=“search”],
输入[type=“text”]{
字号:1rem;
字体大小:300;
背景剪辑:填充框;
过渡:所有0.2秒缓解;
大纲:0;
-webkit外观:无;
宽度:100%;
调整大小:无;
填充:1rem;
边框:1px实心变量(--灰色);
}
输入:悬停,
输入:焦点{
过渡:所有0.2秒缓解;
光标:自动;
边框:1px实心变量(--橙色);
}
.导航菜单.激活a{
颜色:var(--橙色);
}
.导航菜单a{
位置:相对位置;
显示:块;
填充:1rem;
字号:17px;
字体大小:300;
颜色:#202121;
光标:指针;
背景#f4f7f6;
边框底部:1px实心#e6eaea;
文字装饰:无;
过渡:所有0.3秒缓解;
}
.nav菜单a:悬停{
背景色:var(--白色);
-webkit过渡:背景0.3s轻松输入输出;
过渡:背景0.3s缓进缓出;
}
.香水{
位置:相对位置;
宽度:100%;
-webkit过渡:背景0.3s轻松输入输出;
过渡:背景0.3s缓进缓出;
盒影:0 2px 3px 0#e8ebed,0 0 3px 0#e8ebed;
}
.box信息{
过渡:所有0.3秒的缓进缓出;
填充:1.5雷姆;
弹性:1;
位置:相对位置;
明确:两者皆有;
背景色:var(--白色);
保证金底部:1.5雷姆;
}
.box信息--内容{
显示器:flex;
证明内容:之间的空间;
保证金底部:1.5雷姆;
}
.box信息--页脚{
显示器:flex;
}
.box信息--页脚ul{
显示:内联flex;
}
.box信息--页脚li{
显示:内联flex;
调整项目:基线;
填充:0 1rem0 0;
}
.box信息--页脚li span{
颜色:var(--灰色-深色);
}
/*导航类别*/
.导航类别{
位置:固定;
排名:0;
左:0;
高度:100vh;
宽度:75%;
垫面:3rem;
文本对齐:左对齐;
z指数:-1;
背景色:var(--灰色);
}
.导航类别.标题{
位置:相对位置;
}
.导航类别。关闭{
位置:绝对位置;
排名:0;
右:0;
}
.导航类别{
列表样式类型:无;
}
.导航类别李{
光标:指针;
}
.选择导航类别{
背景色:rgb(87,87,206);
颜色:#ffffff;
}
.香水清单{
弹性:1;
顺序:2;
文本对齐:左对齐;
}
.香水{
利润率:10px;
文本对齐:左对齐;
边框底部:1px纯黑;
}
.香水{
列表样式类型:无;
}
/*分页*/
.分页{
文本对齐:居中;
顺序:3;
}
.分页{
宽度:100%;
}
.分页{
显示:内联flex;
对齐项目:居中;
左侧填充:0;
页边距底部:0;
证明内容:中心;
<div className="burguer-button" onClick={handleBurgerIcon}>
const [showMenu, setShowMenu] = React.useState(false);
const handleBurgerIcon = (e) => {
  e.preventDefault();

  setShowMenu(!showMenu);
}
{showMenu &&
  <ul className="nav-menu">
    <li className="active">
      <a href="#">Floral</a>
    </li>
    <li>
      <a href="#">Fresh</a>
    </li>
    <li>
      <a href="#">Gourmand</a>
    </li>
    <li>
      <a href="#">Woody</a>
    </li>
  </ul>
}