diff --git a/src/adapt/layout.js b/src/adapt/layout.js
index <HASH>..<HASH> 100644
--- a/src/adapt/layout.js
+++ b/src/adapt/layout.js
@@ -2097,6 +2097,9 @@ adapt.layout.Column.prototype.saveEdgeAndCheckForOverflow = function(nodeContext
     if (!nodeContext) {
         return false;
     }
+    if (this.isOrphan(nodeContext.viewNode)) {
+        return false;
+    }
     var edge = adapt.layout.calculateEdge(nodeContext, this.clientLayout, 0, this.vertical);
     var fc = nodeContext.after ?
         (nodeContext.parent && nodeContext.parent.formattingContext) : nodeContext.formattingContext;
@@ -2195,6 +2198,17 @@ adapt.layout.Column.prototype.isBFC = function(formattingContext) {
 };
 
 /**
+ * @param {Node} node
+ * @return {boolean}
+ */
+adapt.layout.Column.prototype.isOrphan = function(node) {
+    while( node ) {
+        if (node.parentNode === node.ownerDocument) return false;
+        node = node.parentNode;
+    }
+    return true;
+}
+/**
  * Skips positions until either the start of unbreakable block or inline content.
  * Also sets breakBefore on the result combining break-before and break-after
  * properties from all elements that meet at the edge.
Fix bug where incorrect page breaking was done at the beginning of the table when `writing-mode: vertical`

- Calling `Column#saveEdgeAndCheckForOverflow` with an element deleted  by the mechanism of `TableLayoutStrategy.ignoreList` causes edge to be 0, so it was always judged as overflow in the vertical writing mode.