diff --git a/includes/webform_localization.i18n.inc b/includes/webform_localization.i18n.inc
index 1d44196..d247b17 100644
--- a/includes/webform_localization.i18n.inc
+++ b/includes/webform_localization.i18n.inc
@@ -31,6 +31,12 @@ function _webform_localization_translate_component(&$element, $component) {
     foreach ($component['extra']['translated_strings'] as $name) {
       $name_list = explode(':', $name);
       $current_element = &$element;
+      $current_element_format;
+      if (isset($current_element['#format'])) {
+        $current_element_format = $current_element['#format'];
+      } else {
+        $current_element_format = I18N_STRING_FILTER_XSS;
+      }
       if (strpos($name_list[3], '[') !== FALSE) {
         // The property is deeper in the renderable array, we must extract the
         // the place where it is.
@@ -55,7 +61,7 @@ function _webform_localization_translate_component(&$element, $component) {
         // If property is array, we extract the key from the property.
         list ($property, $key) = explode('-', $property);
         if (isset($current_element['#' . $property][$key])) {
-          $text = i18n_string($name, $current_element['#' . $property][$key], array('format' => I18N_STRING_FILTER_XSS));
+          $text = i18n_string($name, $current_element['#' . $property][$key], array('format' => $current_element_format));
           if (module_exists('token')) {
             $current_element['#' . $property][$key] = webform_replace_tokens($text, $node);
           }
@@ -70,7 +76,7 @@ function _webform_localization_translate_component(&$element, $component) {
           $option_group = str_replace('/-', '', $name_list[4]);
           // If it's a element.
           if (isset($name_list[5])) {
-            $text = i18n_string($name, $current_element['#' . $property][$option_group][$name_list[5]], array('format' => I18N_STRING_FILTER_XSS));
+            $text = i18n_string($name, $current_element['#' . $property][$option_group][$name_list[5]], array('format' => $current_element_format));
             if (module_exists('token')) {
               $current_element['#' . $property][$option_group][$name_list[5]] = webform_replace_tokens($text, $node);
             }
@@ -80,7 +86,7 @@ function _webform_localization_translate_component(&$element, $component) {
           }
           else {
             // If it's a option group we translate the key.
-            $text = i18n_string($name, $option_group, array('format' => I18N_STRING_FILTER_XSS));
+            $text = i18n_string($name, $option_group, array('format' => $current_element_format));
             if (module_exists('token')) {
               $translated_option_group = webform_replace_tokens($text, $node);
             }
@@ -98,8 +104,11 @@ function _webform_localization_translate_component(&$element, $component) {
             if ($property == 'markup' && $current_element['#type'] == 'markup') {
               $text = i18n_string($name, $current_element['#' . $property], array('format' => $current_element['#format']));
             }
+            elseif ($property == 'description') {
+              $text = i18n_string($name, $current_element['#' . $property], array('format' => 'full_html'));
+            }
             else {
-              $text = i18n_string($name, $current_element['#' . $property], array('format' => I18N_STRING_FILTER_XSS));
+              $text = i18n_string($name, $current_element['#' . $property], array('format' => $current_element_format));
             }
             if (module_exists('token')) {
               $current_element['#' . $property] = webform_replace_tokens($text, $node);
@@ -411,7 +420,7 @@ function webform_localization_email_translate_strings(&$node) {
     }
     if (!empty($email['template']) && $email['template'] != 'default') {
       $name = webform_localization_i18n_string_name($nid, 'email', $eid, 'template');
-      $email['template'] = i18n_string($name, $email['template'], array('format' => I18N_STRING_FILTER_XSS));
+      $email['template'] = i18n_string($name, $email['template'], array('format' => 'full_html'));
     }
   }
 }
