your_username 3 недель назад
Родитель
Сommit
b67f73bc1d
4 измененных файлов с 768 добавлено и 55 удалено
  1. 462 0
      package/jobIntention/jobSkills.vue
  2. 1 1
      package/jobIntention/preferenceSetting.vue
  3. 8 0
      pages.json
  4. 297 54
      pages/my/onlineResume.vue

+ 462 - 0
package/jobIntention/jobSkills.vue

@@ -0,0 +1,462 @@
+<template>
+	<view class="job-skills">
+		<!-- 自定义导航栏 -->
+		<view class="custom-navbar">
+			<view class="navbar-content">
+				<view class="nav-left" @click="goBack">
+					<u-icon name="close" color="#333" size="32"></u-icon>
+				</view>
+				<view class="nav-title">岗位职业技能</view>
+				<view class="nav-right"></view>
+			</view>
+		</view>
+		
+		<!-- 主要内容 -->
+		<view class="main-content">
+			<view class="job-title">{{ jobTitle }}-职业技能</view>
+			<view class="description">根据你的偏好设置,为你推荐更匹配的职位,最多选择8个</view>
+			
+			<!-- 运营方向 -->
+			<view class="skills-section">
+				<view class="section-title">运营方向</view>
+				
+				<!-- 技能标签网格 -->
+				<view class="skills-grid">
+					<view 
+						v-for="(item, index) in operationOptions" 
+						:key="index"
+						class="skill-tag"
+						:class="{ active: selectedOperation.includes(item) }"
+						@click="toggleOperation(item)"
+					>
+						<text>{{ item }}</text>
+					</view>
+				</view>
+			</view>
+			
+			<!-- 电商品类 -->
+			<view class="skills-section">
+				<view class="section-title">电商品类</view>
+				
+				<!-- 技能标签网格 -->
+				<view class="skills-grid">
+					<view 
+						v-for="(item, index) in categoryOptions" 
+						:key="index"
+						class="skill-tag"
+						:class="{ active: selectedCategory.includes(item) }"
+						@click="toggleCategory(item)"
+					>
+						<text>{{ item }}</text>
+					</view>
+				</view>
+			</view>
+			
+			<!-- 自定义标签 -->
+			<view class="skills-section">
+				<view class="section-title">自定义标签</view>
+				
+				<!-- 自定义标签区域 -->
+				<view class="custom-tags">
+					<view 
+						v-for="(item, index) in customTags" 
+						:key="index"
+						class="custom-tag"
+						@click="removeCustomTag(index)"
+					>
+						<text>{{ item }}</text>
+						<u-icon name="close" color="#007AFF" size="24"></u-icon>
+					</view>
+					<view class="add-tag" @click="showAddTagModal">
+						<text>添加标签</text>
+						<u-icon name="plus" color="#333" size="24"></u-icon>
+					</view>
+				</view>
+			</view>
+		</view>
+		
+		<!-- 底部确定按钮 -->
+		<view class="bottom-btn-container">
+			<view class="confirm-btn" @click="confirmSelection">
+				<text>确定</text>
+			</view>
+		</view>
+		
+		<!-- 添加标签弹窗 -->
+		<u-popup v-model="showAddTag" mode="center" border-radius="24" width="80%">
+			<view class="add-tag-popup">
+				<view class="popup-title">添加自定义标签</view>
+				<view class="popup-content">
+					<input 
+						v-model="newTagName" 
+						placeholder="请输入标签名称" 
+						class="tag-input"
+						maxlength="10"
+					/>
+				</view>
+				<view class="popup-buttons">
+					<view class="popup-btn cancel-btn" @click="cancelAddTag">取消</view>
+					<view class="popup-btn confirm-btn" @click="addCustomTag">确定</view>
+				</view>
+			</view>
+		</u-popup>
+	</view>
+</template>
+
+<script>
+export default {
+	data() {
+		return {
+			jobTitle: '亚马逊运营总监',
+			showAddTag: false,
+			newTagName: '',
+			selectedOperation: ['独立站'],
+			selectedCategory: ['独立站'],
+			customTags: ['全领域'],
+			operationOptions: [
+				'精品铺货', '独立站', '3C数码', '美妆日用', '服装配饰', '家居用品',
+				'户外运动', '母婴用品', '食品饮料', '宠物用品', '汽车用品', '图书文具',
+				'数码配件', '办公用品', '礼品玩具', '健康保健', '珠宝首饰', '箱包皮具',
+				'手表眼镜', '乐器音响', '摄影摄像', '运动健身', '旅游出行', '教育培训',
+				'金融服务', '生活服务', '其他'
+			],
+			categoryOptions: [
+				'精品铺货', '独立站', '3C数码', '美妆日用', '服装配饰', '家居用品',
+				'户外运动', '母婴用品', '食品饮料', '宠物用品', '汽车用品', '图书文具',
+				'数码配件', '办公用品', '礼品玩具', '健康保健', '珠宝首饰', '箱包皮具',
+				'手表眼镜', '乐器音响', '摄影摄像', '运动健身', '旅游出行', '教育培训',
+				'金融服务', '生活服务', '其他'
+			]
+		}
+	},
+	onLoad(options) {
+		if (options.jobTitle) {
+			this.jobTitle = decodeURIComponent(options.jobTitle)
+		}
+	},
+	methods: {
+		goBack() {
+			uni.navigateBack()
+		},
+		toggleOperation(item) {
+			const index = this.selectedOperation.indexOf(item)
+			if (index > -1) {
+				this.selectedOperation.splice(index, 1)
+			} else {
+				if (this.selectedOperation.length < 8) {
+					this.selectedOperation.push(item)
+				} else {
+					uni.showToast({
+						title: '最多选择8个标签',
+						icon: 'none'
+					})
+				}
+			}
+		},
+		toggleCategory(item) {
+			const index = this.selectedCategory.indexOf(item)
+			if (index > -1) {
+				this.selectedCategory.splice(index, 1)
+			} else {
+				if (this.selectedCategory.length < 8) {
+					this.selectedCategory.push(item)
+				} else {
+					uni.showToast({
+						title: '最多选择8个标签',
+						icon: 'none'
+					})
+				}
+			}
+		},
+		showAddTagModal() {
+			this.showAddTag = true
+			this.newTagName = ''
+		},
+		cancelAddTag() {
+			this.showAddTag = false
+			this.newTagName = ''
+		},
+		addCustomTag() {
+			if (this.newTagName.trim()) {
+				if (this.customTags.length < 5) {
+					this.customTags.push(this.newTagName.trim())
+					this.showAddTag = false
+					this.newTagName = ''
+				} else {
+					uni.showToast({
+						title: '最多添加5个自定义标签',
+						icon: 'none'
+					})
+				}
+			} else {
+				uni.showToast({
+					title: '请输入标签名称',
+					icon: 'none'
+				})
+			}
+		},
+		removeCustomTag(index) {
+			this.customTags.splice(index, 1)
+		},
+		confirmSelection() {
+			// 返回选中的技能设置
+			uni.navigateBack({
+				delta: 1
+			})
+			
+			// 通知父页面更新技能设置
+			uni.$emit('skillsUpdated', {
+				jobTitle: this.jobTitle,
+				operation: this.selectedOperation,
+				category: this.selectedCategory,
+				customTags: this.customTags
+			})
+			
+			uni.showToast({
+				title: '技能设置已保存',
+				icon: 'success'
+			})
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+.job-skills {
+	min-height: 100vh;
+	background: #fff;
+	display: flex;
+	flex-direction: column;
+    padding: 88rpx 40rpx 40rpx 40rpx;
+}
+
+.navbar-content {
+	display: flex;
+	align-items: center;
+	justify-content: space-between;
+	height: 88rpx;
+}
+
+.nav-left, .nav-right {
+	width: 60rpx;
+	height: 60rpx;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+}
+
+.nav-title {
+    color: rgba(51, 51, 51, 1);
+    font-family: DM Sans;
+    font-size: 36rpx;
+    font-weight: 700;
+    line-height: 26px;
+    letter-spacing: 0px;
+    text-align: center;
+}
+
+.main-content {
+    margin-top: 20rpx;
+}
+
+.job-title {
+    color: rgba(51, 51, 51, 1);
+    font-family: DM Sans;
+    font-size: 52rpx;
+    font-weight: 700;
+    line-height: 30px;
+    letter-spacing: 0px;
+    text-align: left;
+}
+
+.description {
+    margin: 20rpx 0;
+    color: rgba(102, 102, 102, 1);
+    font-family: DM Sans;
+    font-size: 28rpx;
+    font-weight: 400;
+    letter-spacing: 0px;
+    text-align: left;
+}
+
+.skills-section {
+	margin-bottom: 40rpx;
+}
+
+.section-title {
+    color: rgba(34, 37, 42, 1);
+    font-family: DM Sans;
+    font-size: 36rpx;
+    font-weight: 400;
+    line-height: 24px;
+    letter-spacing: 0px;
+    text-align: left;
+    margin-bottom: 20rpx;
+}
+
+.skills-grid {
+	display: flex;
+	flex-wrap: wrap;
+	gap: 12rpx;
+}
+
+.skill-tag {
+	width: calc((100% - 72rpx) / 6);
+	padding: 8rpx 6rpx;
+	background: #F7F8FA;
+	border: 1rpx solid #F7F8FA;
+	border-radius: 12rpx;
+	transition: all 0.3s ease;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	
+	text {
+		font-size: 20rpx;
+		color: rgba(102, 102, 102, 1);
+		font-weight: 400;
+		text-align: center;
+		line-height: 1.2;
+	}
+	
+	&.active {
+		background: rgba(153, 196, 250, 0.4);
+		border: 0.5px solid rgba(1, 107, 246, 1);
+		
+		text {
+			color: rgba(1, 107, 246, 1);
+			font-weight: 400;
+		}
+	}
+	
+	&:active {
+		transform: scale(0.95);
+	}
+}
+
+.custom-tags {
+	display: flex;
+	flex-wrap: wrap;
+	gap: 12rpx;
+}
+
+.custom-tag {
+	padding: 8rpx 12rpx;
+	background: rgba(153, 196, 250, 0.4);
+	border: 0.5px solid rgba(1, 107, 246, 1);
+	border-radius: 12rpx;
+	display: flex;
+	align-items: center;
+	gap: 8rpx;
+	
+	text {
+		font-size: 18rpx;
+		color: rgba(1, 107, 246, 1);
+		font-weight: 400;
+	}
+}
+
+.add-tag {
+	padding: 8rpx 12rpx;
+	background: #F7F8FA;
+	border: 1rpx solid #F7F8FA;
+	border-radius: 12rpx;
+	display: flex;
+	align-items: center;
+	gap: 8rpx;
+	
+	text {
+		font-size: 18rpx;
+		color: rgba(102, 102, 102, 1);
+		font-weight: 400;
+	}
+}
+
+.bottom-btn-container {
+	position: fixed;
+	bottom: 0;
+	left: 0;
+	right: 0;
+	padding: 32rpx;
+	background: #fff;
+	border-top: 1px solid #f0f0f0;
+}
+
+.confirm-btn {
+	width: 100%;
+	height: 88rpx;
+	background: linear-gradient(90deg, #007AFF 0%, #5AC8FA 100%);
+	border-radius: 44rpx;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+	
+	text {
+		font-size: 32rpx;
+		font-weight: 600;
+		color: #fff;
+	}
+	
+	&:active {
+		background: linear-gradient(90deg, #0056CC 0%, #4A9FE7 100%);
+	}
+}
+
+// 添加标签弹窗样式
+.add-tag-popup {
+	background: #fff;
+	border-radius: 24rpx;
+	padding: 40rpx;
+	
+	.popup-title {
+		color: rgba(34, 37, 42, 1);
+		font-family: DM Sans;
+		font-size: 36rpx;
+		font-weight: 500;
+		line-height: 24px;
+		text-align: center;
+		margin-bottom: 30rpx;
+	}
+	
+	.popup-content {
+		margin-bottom: 30rpx;
+		
+		.tag-input {
+			width: 100%;
+			height: 80rpx;
+			padding: 0 20rpx;
+			border: 1rpx solid #E5E5EA;
+			border-radius: 12rpx;
+			font-size: 28rpx;
+			color: rgba(34, 37, 42, 1);
+			background: #F7F8FA;
+		}
+	}
+	
+	.popup-buttons {
+		display: flex;
+		gap: 20rpx;
+		
+		.popup-btn {
+			flex: 1;
+			height: 80rpx;
+			border-radius: 12rpx;
+			display: flex;
+			align-items: center;
+			justify-content: center;
+			font-size: 28rpx;
+			font-weight: 500;
+		}
+		
+		.cancel-btn {
+			background: #F7F8FA;
+			color: rgba(102, 102, 102, 1);
+		}
+		
+		.confirm-btn {
+			background: #007AFF;
+			color: #fff;
+		}
+	}
+}
+</style>

+ 1 - 1
package/jobIntention/preferenceSetting.vue

@@ -192,7 +192,7 @@ export default {
 	justify-content: center;
 	
 	text {
-		font-size: 16rpx;
+		font-size: 18rpx;
 		color: rgba(102, 102, 102, 1);
 		font-weight: 400;
 		text-align: center;

+ 8 - 0
pages.json

@@ -555,6 +555,14 @@
 					// #endif 
 				}
 
+			}, {
+				"path": "jobIntention/jobSkills",
+				"style": {
+					"navigationBarTitleText": "岗位职业技能",
+					"enablePullDownRefresh": false,
+					"navigationStyle": "custom"
+				}
+
 			}
 
 			, {

+ 297 - 54
pages/my/onlineResume.vue

@@ -134,12 +134,14 @@
 							<!-- <image src="../../static/images/index/company-logo-1.png" class="logo-img" mode="aspectFit"></image> -->
 						</view>
 						<view class="experience-content">
-                            <view class="flex">
-                                <view class="job-title">资深亚马逊运营</view>
-                                <view class="job-department">运营部</view>
-                            </view>
-							<view class="company-name">深圳市世迪贸易科技有限公司</view>
-							<view class="work-period">2019.02-至今</view>
+							<view class="job-info-row">
+								<view class="job-title">资深亚马逊运营</view>
+								<view class="job-department">运营部</view>
+							</view>
+							<view class="company-period-row">
+								<view class="company-name">深圳市世迪贸易科技有限公司</view>
+								<view class="work-period">2019.02-至今</view>
+							</view>
 							<view class="job-description">
 								负责Amazon英国、欧洲站、制定推广与销售计划,达成团队要求的销售业绩;做好数据的统计分析工作,收集、分析市场信息,竞争对手状况,并根据产品销售与排名变化,及时制定和调整产品的销售...
 							</view>
@@ -157,10 +159,14 @@
 							<!-- <image src="../../static/images/index/company-logo-2.png" class="logo-img" mode="aspectFit"></image> -->
 						</view>
 						<view class="experience-content">
-							<view class="job-title">高级ebay运营</view>
-							<view class="job-department">运营部</view>
-							<view class="company-name">深圳市世迪贸易科技有限公司</view>
-							<view class="work-period">2018.01-2019.01</view>
+							<view class="job-info-row">
+								<view class="job-title">高级ebay运营</view>
+								<view class="job-department">运营部</view>
+							</view>
+							<view class="company-period-row">
+								<view class="company-name">深圳市世迪贸易科技有限公司</view>
+								<view class="work-period">2018.01-2019.01</view>
+							</view>
 							<view class="job-description">
 								负责Amazon英国、欧洲站、制定推广与销售计划,达成团队要求的销售业绩;做好数据的统计分析工作,收集、分析市场信息,竞争对手状况,并根据产品销售与排名变化,及时制定和调整产品的销售....
 							</view>
@@ -178,10 +184,14 @@
 							<!-- <image src="../../static/images/index/company-logo-3.png" class="logo-img" mode="aspectFit"></image> -->
 						</view>
 						<view class="experience-content">
-							<view class="job-title">高级产品开发经理</view>
-							<view class="job-department">产品开发部</view>
-							<view class="company-name">深圳虾皮科技有限公司</view>
-							<view class="work-period">2023.04 -至今</view>
+							<view class="job-info-row">
+								<view class="job-title">高级产品开发经理</view>
+								<view class="job-department">产品开发部</view>
+							</view>
+							<view class="company-period-row">
+								<view class="company-name">深圳虾皮科技有限公司</view>
+								<view class="work-period">2023.04 -至今</view>
+							</view>
 							<view class="job-description">
 								这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容这是简历填写的内容...
 							</view>
@@ -197,6 +207,69 @@
 					</view>
 				</view>
 			</view>
+
+			<!-- 教育经历 -->
+			<view class="education-section">
+				<view class="section-header">
+					<view class="section-title">
+						<text>教育经历</text>
+					</view>
+					<view class="edit-icon">
+						<image src="../../static/images/index/Combined-Shape.svg" style="width: 48rpx;height: 48rpx;" mode=""></image>
+					</view>
+				</view>
+				
+				<view class="education-list">
+					<view class="education-item">
+						<view class="school-logo">
+							<!-- <image src="../../static/images/index/harvard-logo.png" class="logo-img" mode="aspectFit"></image> -->
+						</view>
+						<view class="education-content">
+							<view class="school-name">武汉工程大学</view>
+							<view class="degree-info">硕士 • 高分子化学与物理 • 2014-2017</view>
+							<view class="education-description">
+								这是简历填写的内容这是简历填写的内容内容这是简历填写的内是简历填写的内容这是简历填写的内容...
+							</view>
+						</view>
+					</view>
+					
+					<view class="education-item">
+						<view class="school-logo">
+							<!-- <image src="../../static/images/index/harvard-logo.png" class="logo-img" mode="aspectFit"></image> -->
+						</view>
+						<view class="education-content">
+							<view class="school-name">武汉工程大学</view>
+							<view class="degree-info">硕士 • 高分子化学与物理 • 2014-2017</view>
+							<view class="education-description">
+								这是简历填写的内容这是简历填写的内容这是简的内容这是的内容这是简历填写的内容这是简历填写的内容...
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+
+			<!-- 技能 -->
+			<view class="skills-section">
+				<view class="section-header">
+					<view class="section-title">
+						<text>技能</text>
+					</view>
+					<view class="edit-icon" @click="goToJobSkills">
+						<image src="../../static/images/index/Combined-Shape.svg" style="width: 48rpx;height: 48rpx;" mode=""></image>
+					</view>
+				</view>
+				
+				<view class="skills-grid">
+					<view class="skill-tag">Design & Creative</view>
+					<view class="skill-tag">Wireframing UX</view>
+					<view class="skill-tag">Figma</view>
+					<view class="skill-tag">UI Design</view>
+					<view class="skill-tag">Prototype</view>
+					<view class="skill-tag">Adobe XD</view>
+					<view class="skill-tag">UX Design</view>
+					<view class="skill-tag">Front End</view>
+				</view>
+			</view>
 		</view>
 	</view>
 </template>
@@ -221,6 +294,11 @@
 				uni.navigateTo({
 					url: `/package/jobIntention/preferenceSetting?jobTitle=${encodeURIComponent(jobTitle)}`
 				})
+			},
+			goToJobSkills() {
+				uni.navigateTo({
+					url: '/package/jobIntention/jobSkills'
+				})
 			}
 		},
 		mounted() {
@@ -233,10 +311,21 @@
 					icon: 'success'
 				})
 			})
+			
+			// 监听技能设置更新
+			uni.$on('skillsUpdated', (data) => {
+				console.log('技能设置已更新:', data)
+				// 这里可以更新对应的技能显示
+				uni.showToast({
+					title: `${data.jobTitle}技能已更新`,
+					icon: 'success'
+				})
+			})
 		},
 		beforeDestroy() {
 			// 移除事件监听
 			uni.$off('preferenceUpdated')
+			uni.$off('skillsUpdated')
 		}
 	}
 </script>
@@ -707,74 +796,228 @@
 					.experience-content {
 						flex: 1;
 						
-						.job-title {
-							color: rgba(23, 23, 37, 1);
-							font-family: Inter;
-							font-size: 16px;
-							font-weight: 600;
-							line-height: 20px;
+						.job-info-row {
+							display: flex;
+							align-items: center;
 							margin-bottom: 4rpx;
 						}
 						
+						.job-title {
+                            color: rgba(23, 23, 37, 1);
+                            font-family: DM Sans;
+                            font-size: 16px;
+                            font-weight: 400;
+                            line-height: 22px;
+                            letter-spacing: 0%;
+                            text-align: left;
+                            margin-right: 12rpx;
+						}
+						
 						.job-department {
-							color: rgba(120, 130, 138, 1);
-							font-family: DM Sans;
-							font-size: 12px;
-							font-weight: 400;
-							line-height: 16px;
-							margin-bottom: 4rpx;
+                            color: rgba(120, 130, 138, 1);
+                            font-family: DM Sans;
+                            font-size: 12px;
+                            font-weight: 400;
+                            line-height: 22px;
+                            letter-spacing: 0%;
+                            text-align: left;
+						}
+						
+						.company-period-row {
+							display: flex;
+							align-items: center;
+							justify-content: flex-start;
+							margin-bottom: 12rpx;
+                            gap: 12rpx;
 						}
 						
 						.company-name {
-							color: rgba(23, 23, 37, 1);
-							font-family: DM Sans;
-							font-size: 14px;
-							font-weight: 500;
-							line-height: 18px;
-							margin-bottom: 4rpx;
+                            color: rgba(120, 130, 138, 1);
+                            font-family: DM Sans;
+                            font-size: 12px;
+                            font-weight: 400;
+                            line-height: 10px;
+                            letter-spacing: 0%;
+                            text-align: left;
+
 						}
 						
 						.work-period {
-							color: rgba(120, 130, 138, 1);
-							font-family: DM Sans;
-							font-size: 12px;
-							font-weight: 400;
-							line-height: 16px;
-							margin-bottom: 12rpx;
+                            color: rgba(120, 130, 138, 1);
+                            font-family: DM Sans;
+                            font-size: 12px;
+                            font-weight: 400;
+                            line-height: 10px;
+                            letter-spacing: 0%;
+                            text-align: left;
 						}
 						
 						.job-description {
-							color: rgba(120, 130, 138, 1);
-							font-family: DM Sans;
-							font-size: 12px;
-							font-weight: 400;
-							line-height: 18px;
-							margin-bottom: 16rpx;
+                            color: rgba(120, 130, 138, 1);
+                            font-family: DM Sans;
+                            font-size: 12px;
+                            font-weight: 400;
+                            line-height: 14px;
+                            letter-spacing: 0%;
+                            text-align: left;
 						}
 						
 						.skill-tags {
 							display: flex;
 							flex-wrap: wrap;
 							gap: 8rpx;
+                            margin-top: 12rpx;
 							
 							.tag {
 								background: rgba(248, 249, 250, 1);
 								border: 1rpx solid rgba(227, 231, 236, 1);
-								border-radius: 4rpx;
-								padding: 4rpx 8rpx;
-								
-								text {
-									color: rgba(120, 130, 138, 1);
-									font-family: DM Sans;
-									font-size: 10px;
-									font-weight: 400;
-									line-height: 12px;
-								}
+								border-radius: 12rpx;
+								padding: 4rpx;
+                                color: rgba(102, 102, 102, 1);
+                                font-family: DM Sans;
+                                font-size: 12px;
+                                font-weight: 400;
+                                letter-spacing: 0%;
+                                text-align: left;
 							}
 						}
 					}
 				}
 			}
 		}
+		
+		// 教育经历部分样式
+		.education-section {
+			background: #fff;
+			border-radius: 12px;
+			padding: 30rpx;
+			margin-bottom: 20rpx;
+			box-sizing: border-box;
+			border: 1px solid rgba(227, 231, 236, 1);
+			
+			.section-header {
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+				margin-bottom: 30rpx;
+				
+				.section-title {
+					text {
+						color: rgba(23, 23, 37, 1);
+						font-family: Inter;
+						font-size: 20px;
+						font-weight: 600;
+						line-height: 24px;
+					}
+				}
+			}
+			
+			.education-list {
+				.education-item {
+					display: flex;
+					padding: 24rpx 0;
+					border-bottom: 1rpx solid #F0F0F0;
+					
+					&:last-child {
+						border-bottom: none;
+					}
+					
+					.school-logo {
+						width: 90rpx;
+						height: 90rpx;
+						margin-right: 24rpx;
+						flex-shrink: 0;
+						border-radius: 8px;
+						background: rgba(246, 246, 246, 1);
+						
+						.logo-img {
+							width: 100%;
+							height: 100%;
+							border-radius: 8rpx;
+						}
+					}
+					
+					.education-content {
+						flex: 1;
+						
+						.school-name {
+                            color: rgba(23, 23, 37, 1);
+                            font-family: DM Sans;
+                            font-size: 18px;
+                            font-weight: 400;
+                            line-height: 22px;
+                            letter-spacing: 0%;
+                            text-align: left;
+						}
+						
+						.degree-info {
+                            color: rgba(120, 130, 138, 1);
+                            font-family: DM Sans;
+                            font-size: 12px;
+                            font-weight: 500;
+                            line-height: 24px;
+                            letter-spacing: 0%;
+                            text-align: left;
+						}
+						
+						.education-description {
+                            color: rgba(120, 130, 138, 1);
+                            font-family: DM Sans;
+                            font-size: 12px;
+                            font-weight: 400;
+                            line-height: 16px;
+                            letter-spacing: 0%;
+                            text-align: left;
+						}
+					}
+				}
+			}
+		}
+		
+		// 技能部分样式
+		.skills-section {
+			background: #fff;
+			border-radius: 12px;
+			padding: 30rpx;
+			margin-bottom: 20rpx;
+			box-sizing: border-box;
+			border: 1px solid rgba(227, 231, 236, 1);
+			
+			.section-header {
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+				margin-bottom: 30rpx;
+				
+				.section-title {
+					text {
+						color: rgba(23, 23, 37, 1);
+						font-family: Inter;
+						font-size: 20px;
+						font-weight: 600;
+						line-height: 24px;
+					}
+				}
+			}
+			
+			.skills-grid {
+				display: flex;
+				flex-wrap: wrap;
+				gap: 16rpx;
+				
+				.skill-tag {
+                    padding: 16rpx;
+                    border: 1px solid  rgba(236, 241, 246, 1);
+                    border-radius: 24px;
+                    color: rgba(23, 23, 37, 1);
+                    font-family: DM Sans;
+                    font-size: 14px;
+                    font-weight: 400;
+                    line-height: 20px;
+                    letter-spacing: 0.5%;
+                    text-align: right;
+				}
+			}
+		}
 	}
 </style>