diff --git a/resources/vue/components/stock-images/UploadBox.vue b/resources/vue/components/stock-images/UploadBox.vue
index a0941dd3c1525bcee16fdcd75b071f094e74fdc0..80de74695b670b16022ca88afe796cd9e6050c0f 100644
--- a/resources/vue/components/stock-images/UploadBox.vue
+++ b/resources/vue/components/stock-images/UploadBox.vue
@@ -1,13 +1,17 @@
 <template>
     <label id="stock-images-upload-box-drag-area">
-        <div class="holder">
+        <div class="holder" :class="{dragging: dragging}">
             <div class="box-centered">
                 <div class="icon-upload">
-                    <studip-icon shape="upload" :size="100" alt="" />
+                    <studip-icon shape="upload" :size="100" alt="" :role="dragging ? 'info_alt' : 'clickable' "/>
                 </div>
                 <strong>{{ $gettext('Bild auswählen oder per Drag & Drop hierher ziehen') }}</strong>
                 <div class="upload-button-holder">
-                    <input type="file" name="file" tabindex="-1" accept="image/*" ref="upload" @change="onUpload" />
+                    <input type="file" name="file" tabindex="-1" accept="image/*" ref="upload"
+                           @change="onUpload"
+                           @dragenter="setDragging(true)"
+                           @dragleave="setDragging(false)"
+                    />
                 </div>
             </div>
         </div>
@@ -16,18 +20,23 @@
 
 <script>
 export default {
-    data: () => ({}),
+    data: () => ({
+        dragging: false,
+    }),
     methods: {
         onUpload() {
             const files = this.$refs.upload.files;
             const file = files[0];
             this.$emit('upload', { file });
         },
+        setDragging(state) {
+            this.dragging = state;
+        },
     },
 };
 </script>
 
-<style scoped>
+<style scoped lang="scss">
 #stock-images-upload-box-drag-area {
     background-color: var(--content-color-20);
     height: 100%;
@@ -45,8 +54,16 @@ export default {
     display: flex;
     height: 100%;
     justify-content: center;
-    padding-bottom: 4px;
     padding: 0;
+    position: relative;
+
+    &.dragging {
+        background-color: var(--base-color);
+
+        .icon-upload + strong {
+            color: var(--white);
+        }
+    }
 }
 
 .box-centered {
@@ -61,13 +78,17 @@ export default {
     line-height: 1.2;
     display: block;
     font-weight: 500;
-    margin: 0 0 14px;
     text-align: center;
-    margin-left: 2em;
-    margin-right: 2em;
+    margin: 0 2em 14px;
 }
 
 .upload-button-holder input[type='file'] {
+    position: absolute;
+    top: 0;
+    right: 0;
+    bottom: 0;
+    left: 0;
+
     opacity: 0;
     width: 100%;
     height: 100%;